Merge rewrite of mixer using numpy for buffers.

This branch switches the mixer engine to use numpy arrays for output buffering.  This enables smooth mixing and crossfading performance (tested at 30fps with no issues).  Also includes other enhancements, profiling support, and command line options.