Use entity proxy, rather than direct entity ref

- Adds EntityManager interface
- Adds ApplicationBuilder as a tailored interface for defining apps
- Adds Recipe for defining an entity to be created
- Adds entityManager.createEntity(Recipe) for creating new entities
- Adds EntityProxy (a dynamic proxy for calling entities)
fixing tests
convert TomcatServer to interface+impl
Delete TomcatServerTest

- Test has been disabled for a very long time, and relies on
  groovy magic that won't work anymore because we're TomcatServer
  was converted to Java.