Convenience for making `Result` from `NSErrorPointer` API

Cocoa API commonly uses `BOOL` or object type returns coupled with an `NSError **` parameter where we would like to use `Result` instead. This provides a pair of conveniences to produce `Result` in those circumstances.

This also brings in a deployment target for iOS.
It'd be nice to capture file and line information in case we need a default error, like `failure()` does.