Providing basic JSON support in, looks like we are already autodecoding

I would rather see it as a private function, without that cumbersome check if it is being called as a method.
```
sub _message {
    PubNub::PubSub::Message->new(payload => shift);
}
```
would be perfect