Support null events and a slight change of names

this should have been separated into two pull requests but my log became slightly complicated, so unless one is reject and the other accepted, I hope we can just merge the two.

The first change is a naming change: since introducing _V2 events, it just seems more natural to me to have the other named _V1, and not having one set of events called without the version.

The other change is introducing NullEvent class, which is basically a "skip" class of events that are knows but want to be skipped (since the default implementation throws an exception). I ran into two such events when setting up replication with GTID.

To see the exception just add to your master (if it's 5.6+) config file:
log-slave-updates=true
gtid-mode=on
enforce-gtid-consistency=true