The runner has to allow for async & multithreaded execution. We'd also like to store and reload the code to then be able to run it.