Patternview: improve note drawing code, fix bugs (fixes #419)
AutomationPattern: fix a bug I accidentally introduced in length()
Song editor: fix jittery tracks bug (issue #286)
Normalize volume 100% to MIDI velocity 63

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

Closes #280.
Fix previous
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 https://github.com/LMMS/lmms into stable-0.4
Merge pull request #421 from diizy/stable-0.4

More bug fixes: #419, #286
Triple osc: make buttons more visible (fix #306)
Merge pull request #423 from diizy/stable-0.4

Triple osc: make buttons more visible (fix #306)
Merge https://github.com/LMMS/lmms into stable-0.4