Removed difference between single peer-to-peer calls and conferences
with multiple peers. There is only a single code path now that creates
calls and stores them in a conference (which holds all active calls).
With this also fixed some timing issues that could cause conference
peers to not send or receive media streams.
Should help with some of the issues reported in #276.
Contains the following major changes:
* Export connector, api, and webrtc mediastream objects as angular services.
* Export url formatter as a separate angular service.
* Move `authorizing` flag to a function on the root scope.
* Use directive to set the page title.
* Move buddy list visibility toggling into the buddy list directive.
* Room information is no longer exposed on the root scope.
* Use room.joined and room.left events instead of room.
* Treat rooms as an object identified by name, rather than a string id.
* Remove the following unused or semantically ambiguous events from the
connector: opened, helloed, closed
* Centralize all room state in an angular service.
* Move call to hello from connector to api.