Update the integration tests to use a custom schema for more power and flexibility. The old approach of trying to use existing objects was just too restrictive because it was sometimes hard to use existing objects to test a particular use case.