Merge pull request #417 from diizy/stable-0.4

Pattern: fix bb-track mousewheeling (bit of an oversight on my part, for...
Merge pull request #418 from diizy/stable-0.4

AutomationPattern: fix values after last value
Normalize volume 100% to MIDI velocity 63

Furthermore moved midiVelocity() to Note and removed global volumeToMidi()
helper method.

Closes #280.
Sf2Player: corrected MIDI velocity calculation for pseudo envelopes
Instrument: introduced flags to replace virtual property getters

There'll be more and more flags for instruments. Handling them using
virtual and overloaded getter functions doesn't scale well and adds
unneccessary overhead.
InstrumentTrack: explicitely test for single streamed instrument

...instead of implicitely assuming that the instrument is single-streamed
just because it did not pass a NotePlayHandle.
InstrumentTrack: scale output volume by 2 for MIDI-based instruments

As of 0ca3901ab86006d775125f6a5caf70d873bf008b MIDI-based instruments are
played at velocity 63 for volume=100%.  In order to get the same output
volume, we need to scale it by 2.
InstrumentTrack: another explicit for single stream property
InstrumentSoundShaping: coding style improvements
InstrumentTrack: hide sound shaping widgets for single-streamed instruments

We currently don't apply envelopes/LFOs and filters to single-streamed
instruments, therefore hide the GUI.
Midi: added MidiDefaultVelocity to be used for test notes etc.
Merge pull request #421 from diizy/stable-0.4

More bug fixes: #419, #286
Triple osc: make buttons more visible (fix #306)