Added module registry.

Main module is added to the registry as __main__
and executed by code emitted by the compiler.
Module returns __module__.
Implement import <module> [as <name>].

Modules are required to have a .jpx extension.
Allow setting search paths for imports.
Set import path to directory of main module.
Set the module search path for imported modules.
Document import in ast_support.md.
Store path of loaded module in visitor.
Ensure a module is loaded from the same path as parent.
Separate __modules__ from __registry__.

Previously, if a __registry__ entry was a function, it was
executed to turn it into a module. Now, there's a separate
object that holds the imported modules.
Modules no longer need to return __module__.
Allow importing __main__ from package.
Extract module importing to a separate method.
Implement ImportFrom.

from foo import a as b, c, d as e.
Add eval builtin.
Support from x import * at module level.

We can't guarantee correct scoping when this is
done in a function because the variable lookups
would be propagated to __module__.
Document ImportFrom in ast_support.md.