refactored parser to accept any kind of parser interface, and general code refactoring. time for bed.