Better version

1.. Added more combinators
zeroOrOne, oneOrMore
2. Modified lexer to support skipping whitespaces
3. removed a couple of bugs
4. a new and example that handles a larger "grammar".