- ugly implementation of moving back and forth
- consider more elegant way of event handling/keypress handling
  and defined interfaces
- move forward around variants!