Extend goog.events.Event for custom vector layer events

Vector events are currently just object literals with a `@typedef`.  In the `dispatchEvent` sequence, a `goog.events.Event` instance is created and properties from this object are copied to it.  It is a bit more straightforward just to create a custom event type.