Add util code for nonlinear lessons

Instead of presenting what is essentially a list of lessons, use a
DAG of lessons instead. There's still a lot of work to do.
Add new model 'Lesson' for nonlinear lessons

What was called 'Lesson' before is now called '_Lesson'.
Add basic views for nonlinear lessons

The topological sort is OK but not great.
Use placeholder only if lesson can't be found
Add cleaner guide macros
Refactor lesson sort into its own function
Remove extraneous code from guide/views.py
Add CSS demo page
Add Markdown support with special Sanskrit filter

All lessons will be written in Markdown, with some help from raw HTML
and Jinja macros.
Add lesson: a
Add lesson: short-and-long-vowels
Modify 'sounds' macro to make linking optional
Add 'lesson_url' macro
Add lesson: simple-vowels
Add lesson: compound-vowels
Add lesson: similar-vowels
Add lesson: semivowels
Add lesson: basic-consonants

I can't decide on a consistent style for examples. The two options are:

- pass the translation to a macro
- keep the translation outside of the macro

This lesson uses a compromise between the two, as will the lessons to
come. Older lessons can remain as they are.
Update compound-vowels examples with Devanagari
Remove extraneous code from guide/setup.py