Re-works option parsing and tests to more sanely handle each block of options independently. Refactors parsing into a separate function from merging and adds a forEach() utility to help weed out grotty array indexing bugs.
Updates tests and build for better option handling. Fixes #9