Linear envelopes

Tryout for linear envelopes - works ok except the sustain value needs some
reconstruction to work as expected. The idea was that this change would make
the keyscaling of envelope times easier, and perhaps in the future, easier
to have different ramp types and speeds to be defined in the envelopes.