Create an interface to location subsystem

This pull request creates `PPLocationManager` class which acts as a façade providing access to the location subsystem. It collects interfaces exposed by various classes (such as `PPLocationFetcher`) that provide highly specific location related functionalities and exposes their behaviors via a high level interface.