pythonifying outputrecording and hopefully fixing some of the bugs