Move UI and MIDIeventhandler to their own files
Move ChooseDevice to midiplay.cc

Other users of MIDIeventhandler can manage channels and channel offsets
themselves, if necessary.
midievt.cc: Clear midi channels in Reset()
midiplay.cc: Clear devices, choose device in LoadMIDI

Do this *after* loading a new file and resetting the event handler.
Move bulk of MIDI handling to midievt

Make specific handlers private.
Input interface just accepts MIDI events.
Remove instrument tester from midiplay.cc

Will move this to a new implementation file
midiplay.cc: Remove duplicate header "fraction"

It was included twice.
Move audio output and argument parsing to their own files
Create adlseq: ALSA midi frontend
Report underruns in SDL audio callback
Remove overzealous odd-samples check

The number of actual samples is count*2 (always stereo), so there is no need
for a check whether the count is even, and an odd number could be perfectly
valid. This could result in skipping samples.
Use condition variable for waiting for audio buffer
Make it possible to disable reverb and postprocessing
Make more efficient use of std::deque

Avoid seeking, prefer linear scans. Lowers CPU usage by a lot.
Add back instrument tester as seperate executable adltester
Add gitignore
Disable REVERB by default
Bring back volume display
Subtract average filter again on audio output

Subtract a moving average to avoid clicks.
Clamp number of samples for SDL buffer to next power-of-two

This is required by the SDL API
(see http://wiki.libsdl.org/SDL_AudioSpec)