First major update, midi input, note on/off, filter lfo phase offset, midi channel filtering

Added various functions to test out the useability of encoders to break
away from 7bit values
filter frequencies can now be inc/dec by 1hz resolution, tempo at 1bpm
resolution.

Added support for 4 bar/16 step user patterns without randomisation
(still randomises patterns with octave shifts but the notes aren't
randomised like they are in the scales).

Merged Tomassch's code for midi note on/off support and expansion of
midi in devices supported.

Added functions to split the MagicFX into 3 seperate functions, one for
each FX unit.

Added reset functions for each of the effects units.

Added phase retrigger and phase offset code for filter1 lfo, hardcoded
to retrigger, there are functions to toggle retrigger but they need
implementing in midi_interface.c, added extra members to the oscillator
struct, for retrigger and offset, set retrigger to zero in the init code
to turn it off currently. will expand these

Added channel filtering support, mainly to leave the original midi
mapping intact, and to test new functions on midi channel 1, also to
expand the step sequencing support to allow editing of patterns.