[Sync] Move //sync to //components/sync.

There are a bunch of subfolder reorganizations going along with this:

- engine/ -> engine_impl/
- sessions/ -> sessions_impl/
- util/ -> base/
- internal_api/public/base/ -> base/
- internal_api/public/sessions/ -> sessions/
- internal_api/public/engine/ -> engine/
- internal_api/public/events/ -> engine/events/
- internal_api/public/util/ -> base/
- internal_api/public/ -> core/
- internal_api/ -> core_impl/

This change was generated using the following script:
http://pastebin.com/vVAkRCkh

Because this patch is so large, some review was done in split CLs:

Manual changes: http://crrev.com/2155763002
Sync internal changes: http://crrev.com/2156693002
Sync external changes: http://crrev.com/2148293004

This is a minimal change to support file movement; it doesn't do
anything like merging sync_unit_tests into component_unit_tests,
which will be done in a followup.

The gyp files are not sorted because they're all going to be removed
very soon anyways.

BUG=626114
[email protected], [email protected]
TBR=jam

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

Cr-Commit-Position: refs/heads/master@{#408497}
diff --git a/components/gcm_driver/BUILD.gn b/components/gcm_driver/BUILD.gn
index 30a30ac..7f8e34a 100644
--- a/components/gcm_driver/BUILD.gn
+++ b/components/gcm_driver/BUILD.gn
@@ -68,12 +68,12 @@
     "//components/pref_registry",
     "//components/prefs",
     "//components/signin/core/browser",
+    "//components/sync/protocol",
     "//components/sync_driver",
     "//components/version_info",
     "//google_apis",
     "//google_apis/gcm",
     "//net",
-    "//sync/protocol",
     "//url:url",
   ]
   allow_circular_includes_from = [ "//components/gcm_driver/crypto" ]
@@ -162,10 +162,10 @@
     "//base/test:test_support",
     "//components/gcm_driver/crypto",
     "//components/prefs:test_support",
+    "//components/sync/protocol",
     "//google_apis:test_support",
     "//google_apis/gcm:test_support",
     "//net:test_support",
-    "//sync/protocol",
     "//testing/gtest",
     "//third_party/protobuf:protobuf_lite",
   ]