Adding implementations for the locator API + some refactoring