Make reader read forms instead of AST nodes

This is still a work in progress – all reader support for metadata,
quoting and unquoting forms, and anonymous functions has been nuked
and will need to be added back in at a later date. However, this is
sufficient to begin rebuilding the analyzer and emitter around the
new architecture.
Make analyzer work with forms