Ios8

This branch will prevent possible crashes and discontinue use of deprecated methods in iOS 8. Important changes of note are:
- UIAlertView is switched to UIAlertController if possible. Relevant for surveys.
- Use of interfaceOrientation in determining MPMiniNotification framing is unnecessary in iOS8 and is removed.
- Registration for push notifications in the example app has been updated to use newer methods. 
This was something I went over with Neil once. We decided to stick with 

```
#if compile_time_flag
   if (runtime_flag) {
      // do new thing
   } else {
      // do old thing
   }
#else
    // do old thing
#endif
```

Although that is more verbose than what you have. I don't have a strong opinion either way, but once again I think we should be consistent.