Initial commit.

Substitutional interpreter for the call-by-name λ-calculus; implements
lexical scope via α-conversion.
Add term->string functions.
Add brief README.
Rewrite comment on beta-lftmos.
Add lexer.
Refactor next-string.
Refactor elem.
Rename terminal? to terminal.
Refactor lexer.

Use vanilla strings for name tokens, instead of tagged unions.
Rename helper in print-appl to paren-helper.
Refactor beta-lftmos and reduce.
Change wording in README.
Refactor reduce.

Use a promise on the left recursive call in the application branch of
lftmos-helper. This is not strictly necessary, but it matches the style of the
right recursive call (where a promise *is* necessary).
Add error handler.
Constrain names to only letters and numbers.
Refactor rename.scm and fix some bugs.
Rename files and functions, and edit comments.
Use R6RS modules.

Rename and rearrange things to port to R6RS.
Remove square brackets, add \ as a symbol for λ.
Add parser.

This parser works, but it was written in a time crunch and it needs to be
completely refactored (or rewritten). It is really terrible Scheme code.