Add ui devtools server

Implement a basic devtools server for mus/ash in order to inspect the window
server tree hierarchy from a chrome devtools client. This can be enabled
by starting chrome with the flag --enable-ui-devtools=<port>.
With this implementation, a basic server that only communicates with web
sockets is started. It responds with the hierarchy when the devtools
client connects.

BUG=648701
CQ-DEPEND=CL:2365283003

Review-Url: https://codereview.chromium.org/2374513002
Cr-Commit-Position: refs/heads/master@{#427506}
diff --git a/components/ui_devtools/protocol_platform.h b/components/ui_devtools/protocol_platform.h
new file mode 100644
index 0000000..ee16273
--- /dev/null
+++ b/components/ui_devtools/protocol_platform.h
@@ -0,0 +1,21 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef COMPONENTS_UI_DEVTOOLS_PROTOCOL_PLATFORM_H_
+#define COMPONENTS_UI_DEVTOOLS_PROTOCOL_PLATFORM_H_
+
+#include "base/memory/ptr_util.h"
+
+namespace ui {
+namespace devtools {
+
+template <typename T>
+std::unique_ptr<T> wrapUnique(T* ptr) {
+  return base::WrapUnique<T>(ptr);
+}
+
+}  // namespace devtools
+}  // namespace ui
+
+#endif  // COMPONENTS_UI_DEVTOOLS_PROTOCOL_PLATFORM_H_