major refactoring; add leftover file and optimise

- split out sections of code from main() to fdb.[ch]
- implement qsort of barcodes, should make it faster
- implement leftover file
add read with no matching barcode to reads
add changes to CMake after refacorting