Rename list tests
Fix typo in the test text
Get nested lists working via a re-architecture

We now use Cheerio to create an in-memory DOM-ish tree, and then later serialize (and beautify) it. This is better than working with strings since it allows us to go back and insert a new <ol> inside the "current" <li>.

Fixes #2.
Precompile the parser
Use a specialized Stack class for clarity
Only allow a one-level increase in indentation
Factor out beautify function into its own file