#427 Add an ":exit" command to the REPL

Added new IRepl interface that inherits from IScriptExecutor and adds a new method named Quit

Updated the Execute method of IRepl to accept an instance of IRepl instead of IScriptExecutor

Updated Repl to implement IRepl and the new Quit method, which calls Terminate() and Environment.Exit(0)

Updated the Execute() method of the existing REPL commands to accept an instance of IRepl instead of IScriptExecutor

Added a new ExitCommand that uses the new Repl.Quit() method to exit the REPL

Updated RuntimeServices to bind IRepl to Repl

Updated existing REPL command tests to pass in a mock of IRepl to IReplCommand.Execute instead of a mock of IScriptExecutor

Added new tests to cover the new ExitCommand
`Environment.Exit` should be moved into the `IConsole` abstraction - there is no guarantee which console is in use, so exiting the REPL might be different based on those