squash v1/v2 events together

each event is independently versioned, so having separate major version
packages doesn't make much sense.

dedup parsing logic to make adding/updating events in the future easy.
this will make retaining minor versions less painful.
move Message back to event package