Display any content with a map attribute on the map.

* Display all light DOM children  that have a `map` attribute on the map.
* Updates `google-map.clear()` to remove all features, not just markers.
* Allow `<google-map-marker>` to remove themselves from a map.

To be compatible with the `<google-map>` element, web components only need to define a `map` attribute (null is OK).  `<google-map>` will pass the `google.maps.Map` to these elements or `null` if they should be removed.