This is the best technique I could think of for dealing with the polymorphic payload value. I wanted it to support future event types by falling back to parsing to `interface{}`, and I wanted to support direct unmarshaling into an Event through the standard encoding/json library (instead of requiring the use of, e.g., a `ParseEvent` func, which could set an interface-typed Payload field).

(For comparison, the Google+ API client punts on this by just storing HTML; see https://code.google.com/p/google-api-go-client/source/browse/plus/v1/plus-gen.go#238.)