Made controllers their own object.  Added some utility methods for marshaling objects to a negotiated format