This does two things:
* makes it possible to automatically generalize functions without
bothering the programmer about managing dependencies.
* sorts values such that they'll be defined in the appropriate order
when they are mapped down to JavaScript.
patterns. Seems to clean things up so far.
Also, begin adding a module that resorts definitions to make sure
that each definition comes after the ones it depends on. This will
also make it possible to disallow recursive values statically.