Add more failing tests
Rewrite Markdown parser

Use OOP to eliminate duplication.
Does not yet support tabs or lists.
All other tests pass.