run should really thread through _run, but going MVP right now