Abstraction over the MIDI input. Does all the byte crunching and exposes a straightforward event API.