Switch from `Deferred` to the constructor pattern

Having an additional class is not intuitive.

This is overall a better pattern, though I think it is less approachable to people less familiar with objc blocks and is a little more fiddly when the async methods you are wrapping are delegate based.

Refs #7
Detail Promises/A+ compliance

Closes #7
MKDirections+PMK, CLGeocoder+PMK

Tag 0.9.3