Massive client overhaul for webrtc

* Added relevant AppRTCDemo code for webrtc playback
* Completely new socket and protocol handling class
* Got rid of extraneous nested view classes
* Reorganized event handling around topic-specific handler classes
* Deleted old low level webrtc code
* Sensors hooked up, but not tested
* Touch input forwarding works, sorta

Issues
* AuthData singleton somehow not being initialized sometimes
* Location handling is broken and disabled
* Massive touch input and/or video lag. Unsure of the cause. Possibly related to...
* Client still sending video and audio streams, and wasting lots of CPU doing it

Change-Id: If5936e16d6e03637e5ed0c1df2145df7bcbbb6c0
Disable sending video

Client no longer adds a video stream to its webrtc offer, does not open
the camera device, and does not display the 'self' picture-in-picture
frame.

Change-Id: Ifc891d9f78a620c0ec0944ac4e4b93bf31a5fd95
Receive video only.

Also, update gradle build script to include webrtc jar.

Change-Id: I24a561973530c623d390df13bc470d9f3e1cb464
Fixed Location forwarding

Change-Id: Ic8c6cf52e7604e8f0e97635c8e2b3f22087e8f85
Added Rotation support to client

Client now sends RotationInfo messages when rotation changes are detected
Requires new Protobuf patch

Change-Id: I568058589113935b23a6e6946b8da6cf48f1c193