gps service refactored to singlton