Implement the SPAChannel class.
Merge with master
Make webrtc model always handle the creation of the data channel and notify interested listeners when a transport is created
Use the SPA model in the chat app, and enable the data channel in webrtc based on if spachannel is in the capabilities or not
DataChannel: queue messages when not ready yet
Merge branch 'master' into spa-channel
Decide which transport to use according to their support
Change the interface for SPA specific messages
Payloads: implement SPAChannelMessage
SPA: forward and listen SPAChannel messages
Fix tests
Increase the tests coverage
Fix jshint errors
Merge branch 'master' into spa-channel

Conflicts:
	static/js/chat/models.js
	static/js/chat/views.js
	test/frontend/chat/callcontrolsview_test.js
	test/frontend/chat/textchatmodel_test.js
Address PR comments
Merge pull request #363 from tOkeshu/spa-channel

SPA Channels
Move the spa global in the worker into tkWorker
Only notify the sidebars that the worker is ready once the database has loaded, to prevent issues in tests trying to run before everything has loaded
Merge pull request #369 from Standard8/spa-global-remove

Move the spa global in the worker into tkWorker
Add workaround + bug to debugging info on breakpoint issue