Decoupled map view with and without annotations, added tests.

This is on top of https://github.com/neilang/NAMapKit/pull/14, take that first.

* Tests that load the various demo project items (menu, and each map) and compare snapshotted images of those. This needs more tests for when someone clicks an annotation, etc., but at least it ensures that the initial pins appear in the right place. Uses https://github.com/dblock/ios-snapshot-test-case-expecta.
* Split `NAMapView` into an `NAMapView` and `NAPinAnnotationMapView`, we want pins to be a minimal interface that is basically a point and a view, and you can implement more complex scenarios like the one where a pin has a callout in subclasses.
* Annotations mostly take care of themselves now. A lot of pin annotation logic has moved into the child `NAPinAnnotation` and `NAPinAnnotationView`.
* The interface around observing size changes is clearer, annotation views no longer have to observe size changes.
* Fixed iOS deprecation warnings.