Refactored Location Updating code

- Created class to be responsible for handling LocationClient state
- Created builder class for LocationUpdateManager
- Moved around classes to different packages