Added IRunner, an interface to allow tasks to run after the script disconnects from the client. Core change - The router dispatch method no longer has to be explicitly echod.