Refactored the Assembler to use a Reader monad.
Extracted ParserResult type.
Refactored the runAssembler method.
Test cleanups.
Merge pull request #5 from nullobject/refactor/assembler-reader-monad

Refactored the assembler using the Reader monad