Make skip-blank-lines non-optional, other refactoring

Add test for predicate function option to kits csv parsing
Add blank line to test csv to test blank line skippage and add a blank line test
Made the apply-field-opts fns a bit more readable
Refactored the csv parser to use reduce-assoc instead of merge