Started work on Namespaces. Split interpreter into more files. Improved readability with type definitions.