Huge API refactoring, plain POJO + controllers for Thrift support.