Set all lazily-initialized properties to null on Emitter prototype

When a new property is assigned to an object for the first time, v8
interprets it as a "shape change", and may bail out of certain
optimizations. It's better to assign *some* value for a property
up-front so this doesn't happen. Since the emitter mixin can't rely on
a constructor, we just set these properties to null so lazily
initializing them when they are needed doesn't cause an unnecessary
shape change.