Async matchers on bailout on blocked main runloop.

This is to detect when the test writer adds too many tasks to the main
runloop which "blocks" the polling Nimble needs to do to constantly
verify expected behavior.

Closes #48.
Updated travis-ci to point to Xcode 6.1 / Yosemite images
Added explicit Enum type for PollResult.
Updated travis.yml.

- Use latest SDK version when possible.
- Run against iOS 8.1 SDK
- Added OS X to travis.
- Emit customizable environment variables
- Remove destination timeout
contains() for objc matches strings correctly.

Fixes #50.
Merge pull request #49 from jeffh/async-mainrunloop-stall-detection

Async matchers bailout on blocked main runloop.
Updated contain failure message if the objc matcher is using unsupported types.
Exit polling early if condition is already met
Merge pull request #54 from github/upstream-short-circuit-polling

Exit polling early if condition is already met
Reduce default toEventually() polling interval to 0.01s
Merge pull request #55 from github/upstream-poll-more-frequently

Reduce default toEventually() polling interval to 0.01s
Merge pull request #51 from jeffh/objc-contains-str

contains() for objc matches strings correctly.
Merge remote-tracking branch 'upstream/master'