Replace use of YUI with ypromise

This pull request removes the use of YUI from Locator and uses the standalone `ypromise` instead. It also cleans up a few non future-friendly parts like the use of the private `promise._resolver`.