Attribution
Break out gps functions into their own library for re-use