Adding basic support for executing code in files

Changes:
- Moved REPL code into its own file
- Modified REPL helper code to not execute within the top-level context
- Executable can now read in and run code from a file
- Added 'fflush' call after printing REPL command prompt to ensure prompt is shown before input is taken
- "Fatal error" message changed to "Assertion"