[WIP] The Great Swiftening (a.k.a. the new 3.0)

**:warning: NOT READY TO MERGE :warning:**

Resolves #1365 and #1366. Per my comments in #1369, this is intended to be a long-running branch that will eventually become RAC 3.0, supplanting the [current `3.0-development` work](https://github.com/ReactiveCocoa/ReactiveCocoa/pull/966).

To get us started, I basically just subtree merged [jspahrsummers/RxSwift](https://github.com/jspahrsummers/RxSwift) into here, then bridged several RAC classes back and forth.

~~Currently, only the Mac framework target builds successfully. We may need to revamp our build settings in order to combine Swift and Objective-C correctly.~~
These already have to be treated differently, as you have to provide a parameter which has meaning only to the compiler. I think `foo^.operator()` connotes “treat this as a thing of things” better than `foo.operator(identity)` does.

My objection to both this and my `^` suggestion is that they’re jarring; unpleasantly weird.

Defaulting to simplicity—the extant approach—can we at least provide a somewhat more obvious name for the user than `identity`? I have no idea what that would be, tho :frowning: