@orta => Hide the implementation details of the annotation to view map.

Most of the time we don't need to be doing a point + representedObject search in the map view, so added an explicit `viewForPointandRepresentedObject`. 

Abstracted away the implementation details and returning enumerators for annotation views and annotations.