onMessageReceived functionality

When you receive a string message, convert to JSON and check for the
sender, text and button fields and then toast the fields you find. Treat
them as optional so if the fields don't show up then you'll toast
"null".

Also enforce the KEY_* naming semantics for the names of fields in the
JSON where the * is replaced by an upper-case version of the key string.