[Boombox] initial commit for looper implementation
[Boombox] initial commit for PlayerState implementation
[Boombox] overloaded Boombox.play to accept either a provider or an id
[Boombox] fixed getCurrentPosition
[Boombox] added more states for PlayerState
[Boombox] better synchronization
[Boombox] added option for multiple continuous modes
[Boombox] made ContinuousMode public
[refactor] tabs to spaces
[Boombox] added async shuffle/reset playlist support
[Boombox] gracefully handle data provider errors
Merge branch 'looper'