Use RAC for application logic flow

@andrewsardone, am I doing this right?

I've tried here to make the flow through the entire app ReactiveCocoa-based.

Assuming the code I've written works, this should very cleanly reduce the amount of state we store in the application "controller", and nicely defines the flow of data through the dependencies in the app.