split out ScriptRunner to add Base class