Cleans up the code significantly and collects all of it in a subpackage. It also eliminates the last JSON file in the language modules.
Migrate template engine to Jinja2: it is much better maintained than Mako and has less quirks. (For example, Mako interprets all lines starting with ## as a comment and you cannot disable this).
Use the doctest module to parse "sample" code blocks, meaning we now do support multi-line statements and more importantly outputs.
Fixes #291, fixes #287.