Clean up openlayers properly in MapUI.onClose

Needed to unregister event callbacks and destroy map when closing
view to avoid

1. multiple callbacks on select events, that turned every click into
a double click (ie. noop).

2. massive memory leak as we weren't checking olmap in map.init.

Note: we still don't check olmap in map.init.