added 2 helper methods
removed repeated code, organised for easier extension

Since this class implements interfaces we don't need to keep them in map
activity, also some of the fields are inherited so made easy access for
them
optimised place search, reorganised some methods

in the next update will lighten the code base for this class, so that it
only handles specific stuff, will have a think about whole inheritance,
perhaps might be able to find a way for easier listening to provider
changes