EventEmitter: Remove dead code that claims to prevent double bindings

The documentation claims that if binding the same event name and
callback multiple times, the later ones are ignored.

However this isn't true (in fact, we have a unit test asserting
the opposite). The code that pretended to do this was broken
because it evaluated 'bindings.callback' when it should've been
evaluating 'binding.callback'. The former is always undefined.

I've considered repairing this feature (which has been broken
since the very first release), but I think it's best to drop it.

It's not really a bug either way, both are behaviours that could
be expected from an event emitter. To change this now would
break compatibility. And in retrospect I think this feature was a
mistake. It encourages bad code and would mask the error by
silently ignoring any duplicate binding.

Change-Id: I3b84484d7ce1d0c9737c0741453de24fca684e60
EventEmitter: Support events named "hasOwnProperty"

Change-Id: I8c61ad4ce8ad1598d7fd33d349fe75788c29215a