Add support for tracking the multiplex index sequence.
I had to add a new table to store the sequence Samples.MultiplexIndex
its manually searched by library type and ID.
There's also some extra complexity in that the multiplex id field
allows entering a comma seperated list to handle the cases where there are
samples that are pooled before being given to us. (As our library actually
represents a single physical tube).
This also adds a --sample-sheet option to attempt to create a sample sheet
for demultiplexing samples.