code: @JsonCreator
      static NessEvent createEvent(@Nullable @JsonProperty("user") final UUID user,
                                          @Nullable @JsonProperty("timestamp") final DateTime timestamp,
                                          @Nonnull @JsonProperty("id") final UUID id,
                                          @Nonnull @JsonProperty("type") final NessEventType type,
                                          @Nullable @JsonProperty("payload") final Map<String, ? extends Object> payload)
      {
          return new NessEvent(user, timestamp, type, payload, id);
      }
docs: Create a new event from over-the-wire json.
  
  @param user      User that the event happened for. Can be null for a system level event.
  @param timestamp The time when this event entered the system
  @param type      The Event type.
  @param payload   Arbitrary data describing the event.
  @param id        UUID as event id.