Created an omicron Thrift API and updated Java API to match.
Huge API refactoring, plain POJO + controllers for Thrift support.
Unit test fixes.