Adopting enumeration marco for PMKBlockDesciptionFlags

As per
https://developer.apple.com/library/ios/releasenotes/ObjectiveC/Moderniz
ationObjC/AdoptingModernObjective-C/AdoptingModernObjective-C.html#//app
le_ref/doc/uid/TP40014150-CH1-SW6
Merge pull request #14 from mattmorton/master

Adopting enumeration marco for PMKBlockDesciptionFlags
Fail gracefully if GET `NSNull`

Deserialized JSON often contains `NSNull`, and it is common to deserialize, subscript and GET. So let’s be forgiving.
Make tests autonomous

Also increase signal/noise by removing expected error logging during tests.
Make [CLLocationManager promise] output consistent

Let’s not cause user-failures because many locations are fed to the handler in the real world.
Fix PMKUserAgent for OS X; Export symbol.
Tag 0.9.4
Move documentation to promisekit.org

README is now a small sample and teaser.
#ifdef around the MapKit that is iOS >= 7

The default subspec would not install on iOS 5/6 due to MapKit requiring 7. Removing MapKit front the default is not acceptable and I could’t figure out any other logic that CocoaPods would accept, so we’re doing this.
Promises can be resolved with multiple arguments

Closes #9.

We allow up to three arguments. More is a code smell, but the reason for our limitation is that every additional argument requires so much more code.
when handles non-promises in input
Test some edge cases
++document
Merge remote-tracking branch 'upstream/master'