... and changed again

Direct was too computationally expensive, also now most computation
happens when parameters change, and linear envelopes use the same
equation as exponential ones in the perform routine
changed global tempo, added more "stream" objects

added various stream reading objects, put global tempo stuff in
abstractions, added pipebang, added a few arguments to [sequencer], put
all global tempo stuff into abstractions globtemps and globtempr