Idiomatic.js formatting
Add some basic testing

Phantom doesn't support the Web Audio API, so it's hard to get much coverage… but at least this way Travis can tell me if a PR completely breaks the whole library.