[Chromoting] Create core Application interface for CRD.

This adds the a base Application class and defines a few methods
(onConnected, onDisconnected, onError, ...) that remove CRD-specific code
from the base connection code and move it into a CRD-specific file.
app-specific functionality.

BUG=

Review URL: https://codereview.chromium.org/779613003

Cr-Commit-Position: refs/heads/master@{#307153}
diff --git a/remoting/remoting_webapp_files.gypi b/remoting/remoting_webapp_files.gypi
index 3275f99..4eccdb6 100644
--- a/remoting/remoting_webapp_files.gypi
+++ b/remoting/remoting_webapp_files.gypi
@@ -58,6 +58,7 @@
     ],
     # Remoting core JavaScript files.
     'remoting_webapp_js_core_files': [
+      'webapp/base/js/application.js',
       'webapp/base/js/base.js',
       'webapp/base/js/platform.js',
       'webapp/crd/js/error.js',
@@ -200,6 +201,7 @@
     # The CRD-specific JavaScript files required by main.html.
     'remoting_webapp_crd_main_html_js_files': [
       'webapp/crd/js/crd_main.js',
+      'webapp/crd/js/desktop_remoting.js',
     ],
 
     # The JavaScript files that are used in the background page.