Major changes: track format changed

The track format has changed, because MIDIChords
are now going to be allowed to loop their moments
while waiting for the user to play the next chord (or
rest). Tracks now contain arrays of midiObjects
(i.e. midiChords and midiRests) each of which
contains the moments which were previously stored
directly in Track.moments. There is simply one level
more.
Recordings are made using two new classes:
SequenceRecording and TrackRecording. These
store flat moments as in the original Sequence
and Track classes.
This version of the code runs without the Assistant,
but the cursor does not advance - it is probably
just waiting for info that time is passing.
The Assistant has not been attempted at all yet,
but major changes are to be expected there too.
TODO: first get unassisted performance (and the
saving of the recording) working.