Refactor RACCommand interface to be more FRPy
Add operators to manipulate inner signals

Also remove -executeCommand:, since -flattenMap: or -then: should be
more common now.
Remove <RACSubscriber> from RACCommand

It doesn't really add anything. The command can just complete when
deallocated.
Turn RACCommand into an NSObject

This will make the breaking changes more obvious, and also makes code
more self-documenting (through the use of `executionSignals`).
Move inner signal operators back to RACCommand
Merge branch '2.0-development' into command-replacement
Refactor RACCommand implementation
Update observers of canExecute
Ensure that executionSignals terminates on the main thread
Create executing signal before enabled signal

The latter depends on the former.
Refactor existing unit tests for new RACCommand interface
Fix up unit tests and implementation bugs
Remove unneeded RACSignal.h import
Fix disposal happening too late in NSControl.rac_command
Factor out command control.rac_command tests
Declare 1.x RACCommand methods as unavailable

It'd be nice to make them deprecated instead, and offer a migration
path, but I don't think that's feasible given the scope of the API
changes.
Restore automatic catching of inner errors
Rewrite CHANGELOG sections about commands
Restore and deprecate -executeCommand:
Clean up unit tests, add more for new functionality