Bring Orion up to date

* Update Athena reference
* Implement ControllerDefinition
* Refactory to prepare to convert to static library