Refactor: definitions, repl and scope modules

* The repl module's repl function now takes an interpreter argument
* The global scope is created in the definitions module
* Everything from the Math module is imported into the global scope
* The scope class is in its own module