Refactored out CLLocation to custom class