[MP-1110]: Add the ability to supply the Authorization token with the GcmRequest.  Add the ability to build a GcmRequest from JSON contained in a string.
Changes to support submitting a message to GCM with blocking and modifying the exception hierarchy.
Ensure the correct exception is set by the listener.
Added some integration tests using stubby4j to stub the GCM HTTP connection server.
Honour any Retry-Header included in the response so the sender can implement exponential back-off.
Modify the integration tests to catch and test the GcmNetworkException directly due to the DefaultGcm changes.
Ensure that the extra fields added to the GCM request are not marshalled when sending to GCM.
Add the ability to generate test data of payloads and registration ids.
Handle better an exception when connecting to GCM and the entire service or network to the service is down.
Prevent attributes elements being output in the marshalled JSON sent to GCM.
Modify dependency to be included, always not just in tests.
Ensure that when marshalling for sending to Gcm, no whitespace is included.
Ensure whitespace is removed when marshalling to send to Gcm.
Remove unused import.
Preparing pull request for merging

Pull request: https://github.com/phonedeck/gcm4j/pull/1

Changes:

- The original Gcm interface is able to handle blocking calls without any
  serious overhead. BlockingGcm is a proof-of-concept blocking implementation
  that still runs the requests through the filter chain

- Removed httpclient dependency. Instead of pulling in the whole library, I
  copied and adapted the DateUtils class to our need

- Removed unused commons-lang3 dependency

- Removed joda-time dependency. I think that using shared static facilities in a
  library is generally not a good idea, and is prone to cause problems in a
  project

- Removed static ObjectMapper from GcmRequest. Since the library provides no
  standard way of getting the raw response from GCM Server, manually
  deserializing the response is also not the responsibility of the library

- Reformatted code to match the style of the library