Re-implement mono and stereo sample players:

* Unify standard sample players and partial sample players. There is now 
  only `sample`.
* Teach sample how to play sub-parts of a sample with start and end 
  (percentage 0-1 vals) params
* Allow start to be smaller than end for playing sample in reverse
* Remove looping functionality - looping should be done via external
  programming structures
* Add trapezoidal envelope over sample - used to remove clipping and 
  other effects, available via :attack and :release params. 
  attack + release should ideally be less than the sample duration
* Add fun idm-like breakbeat example
re-implement `rand` using a seeded generator: 

* rand now behaves similarly across runs
* now allows you to use floats as limit
remove repeated synthdef
Teach sample players how to handle negative rates (for reversing)
Fix recognition of flat notes with b suffix - also make bs 'above' b