Fix for component being disposed before the timeout function is called.

R=nicksantos
DELTA=4 (3 added, 0 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=6168


git-svn-id: http://closure-library.googlecode.com/svn/trunk@2451 0b95b8e8-c90f-11de-9d4f-f947ee5921c8
Some cleanups before introducing Listenable handling to goog.events:

* Add goog.events.cleanUp that cleans up goog.events internal
data structure given a ListenableKey.

* Move key number generation to goog.events.ListenableKey.

* Rejigger code in goog.events to refer to
goog.events.listeners_ in as little places as possible
(subsequent logic to unify handling for DOM events and
Listenable will be cleaner, as listen_ will just return a
ListenableKey and listen/listenOnce will handle putting the
object into listeners_ array).

R=nicksantos,gboyer
DELTA=137 (104 added, 16 deleted, 17 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=6169


git-svn-id: http://closure-library.googlecode.com/svn/trunk@2452 0b95b8e8-c90f-11de-9d4f-f947ee5921c8