* First commit
* Basic working player, with tempo control

TO DO:
* Just have one virtual output, and output multiple channels
* Better syncing - to 1/12 crotchet
* Dedicate a track to location control, and implement this
* Docs
* changed to one virtual output, with multiple output channels
* syncing to 1/12 crotchet implemented
* 2 fixes to tap tempo:
(1) bug fix - wrong average value was being calulated
(2) if using tap tempo to start song, it now waits a beat before starting
* Now shows beat count in console
* location control implemented
* bug fix to tap tempo - if starting song this way it was only waiting for a 1/12 of a beat instead of 1 whole beat

TO DO:
* Allow muting/unmuting of tracks - using number keys
* '-' & '=' to move up and down the song list (linked into above todo)
* changing location doesn't take into account any time signatures changes prior to this location
* passing in position & beatInfo into nextCommand is messy, and probably unneccessary (linked into above todo)
* check ticksPerBeat acts okay for time signatures other than 4/4 (e.g. 6/8)
* set beatsPerBar from midi file (currently hard-coded to 4)
* Docs
* nextCommand() tidied up, only beatInfo is used now.  Extra init when loading a song.
* beatsPerBar now set from MIDI file
* can now mute/unmute individual channels
* '-' and '=' to move up and down songs implemented
* bug fix - line 32 now checks for command.beatInfo
* player now uses defined midi channel for each track/note rather
than determining channel by track index.
project merge
* original project renamed to "Live MIDI Player"
* merge tidied up