GCM: refactor IncomingMessaging and OutgoingMessage.

This will allow them to be used in:
chrome/common/service_messages.h

* Make them top level classes.
* Move IncomingMessage and OutgoingMessage to their own file
* Depend on this through the gcm_driver_common component
* Export them

BUG=402456
Design document: https://goo.gl/LRdGTm

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

Cr-Commit-Position: refs/heads/master@{#338494}
diff --git a/components/gcm_driver/gcm_driver.cc b/components/gcm_driver/gcm_driver.cc
index 8227817..cebec36 100644
--- a/components/gcm_driver/gcm_driver.cc
+++ b/components/gcm_driver/gcm_driver.cc
@@ -125,7 +125,7 @@
 
 void GCMDriver::Send(const std::string& app_id,
                      const std::string& receiver_id,
-                     const GCMClient::OutgoingMessage& message,
+                     const OutgoingMessage& message,
                      const SendCallback& callback) {
   DCHECK(!app_id.empty());
   DCHECK(!receiver_id.empty());