recording and playback via UI
closes #3