Rebase code onto latest

* Register types with api.Scheme and declare IsAnAPIObject()
* Update REST method signatures
* Handle Client version and Codec changes
Update tests to get back to passing
WIP - Integration tests