Addressing #2 - adding support for resolving asset by urn in modules.

Introduces support for formats (loading files into asset data) and setting the module environment. When the environment is set, or when a new format is registered, all unloaded assets are discovered and recorded in a table for loading. The table is not strictly necessary yet, but will allow for both overrides and incomplete urn resolution down the track.