Refactor runner to be compatible with live coding