Button handlers and track recording

Closes #40 #46