GCM tested and functional

Basic GCM infrastructure in place and tested. Still need to:
- handle specific notifications and filter messages based on currently
  logged in user or something similar.
- allow user to toggle gcm notifications on/off and prevent them from
  happening if application is removed from a device.
- add lots of documentation for gcm functionality.