I will refactor this for sure, but on the next iteration. Broker actually shares lots of code; the view controllers can be separate classes. For the broker I will try to use categories, similar to the partial classes on C#. This has side effects that the compiler cannot find at compile time if I am not conforming to an interface. Will see...