TODO

 * re-write the low-pass to decrease load

DONE
 * fix noisy ride sample
 * add tool change animation
 * tile interface with touch patterns
 * mix and play sound
 * make sure each write is exactly buffer_size or N5 will die.
 * add tempo indicator
 * samples for 48K and 44.1K
 * add multiple banks
 * add code to select between versions of the same drum
 * control ideas:
    - pause
    - clear this pattern
    - alternative pattern
    - shuffle this pattern
 * see if the resampling code can be imporved
 * replace GDX nighlies with 1.4.2 release when its here!
 * add base and random velocity to each voice
 * add 2D choice scene
 * use 2D choice to change Compressor breakpoint
 * add import/export via the clipboard

 * rewriting get_choice/get_choice2:
    - remove Program.getTempoParameters() and make Program a paramter
    - same for Program.getVolumeParameters()
    - add labels to parameter members and show them on choice scenes
 * get to volume page by long-pressing on the instrument


WONTFIX:
 * code should be optimized for 48K and 44.1K
 * need 90deg rotated text, y-label in Choice2 should be vertical
