Use tools.reader to read expressions

Use a source-logging-pushback-reader in order to
preserve source information for sending sourcemaps
to the browser.

Fixes #19 - Uses the compiler environment and
makes sure to bring in the proper requires for
aliases. It would be nice to just use `form-seq` but
if multiple forms are entered, the resulting sourcemaps
from `evaluate-form` would be incorrect as the reader
needs to be initialized with line 1, column 1 for each form.