Removed pointers
Moved combinators to Parser type
Moved state to separate module, more tests