Fix synths and FX:

* Zawa wasn’t being properly panned (only came out of left speaker)
* IXI Techno FX didn’t honour slide controls and freq was in Hz rather than MIDI notes.
Fix mod_dsaw to use envelope params correctly
OS X build instructions are currently broken...
add block level comment fn
remove unnecessary addition
minor restructure of includes
tidy up qt config files
ensure current running ruby is used to compile the extensions
teach the GUI to use high res images on Mac
(for retina displays)
update all synths:

* move to using time (rather than Hz) as unit for modulating stuff. Use new param name
  phase (short for phase duration) to unify this
* move from ASR to ADSR envelopes on all synths. Default behaviour
  should be unchanged unless the following new params are specifically used:
  - decay
  - attack_level
  - sustain_level
* add missing info in rb metadata file
* beef up bells a little with more thickness
* add triangle wave form to tb303 synth (available with waveform 2)
update all synths:

* move to using time (rather than Hz) as unit for modulating stuff. Use new param name
  phase (short for phase duration) to unify this
* move from ASR to ADSR envelopes on all synths. Default behaviour
  should be unchanged unless the following new params are specifically used:
  - decay
  - attack_level
  - sustain_level
* add missing info in rb metadata file
* beef up bells a little with more thickness
* add triangle wave form to tb303 synth (available with waveform 2)
Merge remote-tracking branch 'origin/master'

Conflicts:
	app/server/sonicpi/lib/sonicpi/synthinfo.rb
remove ruby extension detritus
fix up synthdefs to ensure they don't have ns info:

* add new bitcrusher FX! (Needs extra ugens)
* also fix a few bugs
fix path to root to be 2 dirs deeper now we have an extra lib/sonicpi
actually add bitscrusher FX synth designs
Breaking change! Temporal args now scale with current bpm

* all args that represent time (i.e. envelope, phase duration) now scale
 with the current bpm. That is, if the bpm is the default, the units
 represent seconds. However, if the bpm is doubled, the times half. This
 means that the units are actually beats. The echo therefore echoes with
 the beat, the envelopes shorten to ensure each note stays within its
 beat remit and the modulation synths modulate in accordance with the beat.
Fix slicer fx to use (/ 1 phase) as rate
update examples to match new arg names and bpm behaviour
Add new fn rt for bypassing any bpm scaling:

+use_bpm 120  # modifies all time to be half
+play 50
+sleep 1      # actually sleeps for half of a second
+play 62
+sleep rt(1)  # bypasses bpm scaling and sleeps for a second
+play 72