Each controller action is its own class, making it possible to abstract tasks like authorization, deserialization, serialization, and callbacks.
Ryan Francis
MIT