Prevent sending custom data payload sending empty aps key

When a Message with custom data payload is sent, without any data in the
`aps` data key, the empty array is encoded into the JSON. This can cause
problems on the receiving device.
Merge pull request #18 from tekerson/bug/empty-aps

Prevent custom data payload sending empty aps key