Beginning to use jiJazzWebMIDIAPI

This commit does not run.
Added js/jiJazzWebMIDIAPI.js which is a drastic revision of Chris
Wilson's shim. Very grateful to him for starting the file, but I
need full control so have made a private copy and am changing it
so that it meets all my requirements. First, I reorganized it so
that JSLint stopped complaining and I could understand what was
going on, then I built it into the Assistant Performer.
Am currently debugging, using abudaan's JazzMidibridge as a crib,
to get it working. (It is NOT yet running).
Have decided to implement a MIDIEvent module before continuing
with the debug. The MIDIEvent module will probably affect what
happens when I continue to debug jiJazzWebMIDIAPI.
Added js/jiMIDIEvent.js

This commit does not run.
jiMIDIEvent exposes constructors for MIDIEvents which are as small
as possible, and are very like the current Web MIDI API object.
Have changed all the files which are affected by the new object,
and they all now pass JSLint. The only file which does NOT pass
JSLint is jiJazzWebMIDIAPI.js, which is going to be affected by
the new jiMIDIEvent.js file. In fact, I think both these files are
going to end up in the Web MIDI API...
jiMIDIEvent.js is where all MIDI constants are currently defined,
and these should be used in jiJazzWebMIDIAPI. In fact, I think
jiMIDIEvent.js should contain all the code not dependent on Jazz.
When the Web MIDI API is running in the browser, it should be
possible to delete jiJazzWebMIDIAPI, and turn parts of
jiMIDIEvent.js into a Javascript library containing those parts
which did not make it into the Web MIDI API.
File reorganisation: JazzWebMIDI and Sequence to lib

I've decided to put all files that can be reused in future MIDI
projects in the lib directory.
Created a new file (a stub) lib/jiJazzWebMIDI.js defining the
webMIDI namespace and having an API identical to the current
Web MIDI API as described at the W3C. Will complete this with the
help of JazzMIDIBridge and WebMIDIAPIShim code.
Other files in lib may end up in a standard library when browsers
implement the Web MIDI API.
Serious Web MIDI Library development begins

Moved files to lib, created new namespace WEB_MIDI_LIB for
the library. Am about to rename a lot of important types:
JI_NAMESPACE.MIDIEvent -> WEB_MIDI_LIB.Event etc.
Added renamed files in lib
Backup commit.

TODO: Write the function SMFToSequence (in StandardMIDIFile.js)
Complete the create/delete save button code in folder js (i.e.
outside the library) and put a simple example of loading and
saving SMFs in lib/examples.js
Documentation of the library modules is otherwise fairly complete.
TrackControl.getTrackIsOnArray function added.

The new function returns an array which is passed to the playSpan()
function. The array cannot be used to set the status of the tracks.
Debugging results (backup)