Related to #59: Environments are mappings from names to values. Partial evaluation and metadata in general needs a mapping from values to their metadata.
This metadata store should be used at least for function names and possibly source for inlining and partial evaluation purposes.