Receive & process GCM messages
Send message from inside the app
Save and retrieve messages
Retrieve and list messages