Allow stacking propagations. L.MarkerCluster uses this as follows:

Marker propagates to FeatureGroup.
That FeatureGroup propagates to MarkerClusterGroup.
Then users add listeners on the MarkerClusterGroup
Don't crash if a marker is removed from the map before it fires a mouseout event.
This should be oldLatLng, even if latlng is wrong, let's have this be right. refs #2412 #1423
Merge pull request #2413 from danzel/propagation-fixes

Propagation fixes
Fix adding and immediately removing a Layer from the map when the map is never initialized
Another break with adding and removing tile layers.
Merge pull request #2421 from danzel/addremovebug

Fix adding and immediately removing a Layer from the map when the map is never initialized