Modify RecorderJS for multiple recorders, buffer combining, and better callback handling in the worker

Please review @jeresig

I recommend looking at the diff with ?w=1

Much of the code is changed from RecorderJS. Specifically:
- The exposed interface is MultiRecorder, and not Recorder
- Rewrote readme to document MultiRecorder
- The Recorder functions were all rewritten to handle multiple concurrent callbacks (they previously relied on a single global callback, which is problematic if you call the worker twice at once)
- The MultiRecorder object was added, which takes care of things that were previously done in the example code.
- The Web Worker has a function to combine buffers now.