I have added to my Info.plist, set the Type to String and added "allow location?" as the Value.
I then added
var locationManager: CLLocationManager!
locationManager = CLLocationManager()
locationManager.delegate = self
Apparently in iOS 8 SDK,
requestAlwaysAuthorization (for background location) or
requestWhenInUseAuthorization (location only when foreground) call on
CLLocationManager is needed before starting location updates.
There also needs to be
NSLocationWhenInUseUsageDescription key in
Info.plist with a message to be displayed in the prompt. Adding these solved my problem.