Parser Progress Checkin

1. Decided not to use a meta table for each ASTNode.
   Meta data, such as header level and CSS ID will
   only appear on specific nodes, and after pruning
   the syntax tree.

2. Completed most of the block parser, though without
   tests. May need some serious refactoring.

3. Revised `ParserBase` option handling. A utility
   module for data structure and string manipulation,
   such as `$.extend()` from jQuery may be necessary.