Testing out a cached approach for loading device

Loading devices only once unless trigger again by the user in an effort
to improve load time for the library
Introducing a new class Note which represents a pressed/released key.

Added javadoc, example and code
Added support for the Note class for noteSend

Added note class method sendNoteOn(..) and sendNoteOff(..)
Remove not needed files
Fix an error in the docs
Work on the Note class pull request

* Simplified the Note class
  * Use naming more inline with MIDI, e.g. velocity instead of strength
  * Include bus name
  * Derive secondary information on the fly (relative/octave)
* Add a matching ControlChange class
* Make the relevant listener Interface seperate, users will likely
choose one or the other and won't need both types of callbacks

* Adjust various naming to follow conventions
* Update documentation (still incomplete)
* Update examples to match changes
Added missing callbacks for ObjectMidiListeners
Merge branch 'pr/2'