type definition, information and helper routines moved to module Types
cosmetic changes in Parser
do-notation with continuations reworked out; Val made parametric of Expr type; Val now instantiaded as a Monad