Bug Fix: Crash on MapView

OnLocationChange is fired periodically because of location change which
is not handled properly at MapView because of which application was
crashing.

TODO (if time persists): consolidate the logic of fetching current
location in one class and use it as API instead of distributed methods.