Merge pull request #2 from avsm/master

make bindoc easier to use
Be more robust to unusual orderings in the parsetree

This should address the issues with camlp4 extensions (like sexplib) inserting
things out of order.
Rewrite the parser to treat whitespace more uniformly

Move the handling of whitespace from the lexer to the parser.
Merge pull request #1 from lpw25/master

Be more robust to unusual orderings in the parsetree