Improving the playlist controller, and first steps to client video controller.

Theres a possible race condition on www\src\js\player.js:37 that could manifest as a video never starting, if the video controller happened to load long after the playlist got the videos and emitted the setactive event. perhaps a sort of getActive() function that returns the active video or waits for an active video to be made in a callback and then returning.

I'm also wondering if the dom-selector usage in the player/playlist is a good idea or a bad idea, perhaps the playlist should just keep all the information in memory.
see:
* player.js:11
* playlist.js:93
stuff like that.