Stores mapposition between sessions

* Stores mapposition between session
* Rearrange how location client in used
* preemptively fetch location in initactivity for new users
* location related refactoring plus adding tests
:+1: