make locationservice more robust, refactor session storage