Support catalog annotation on ApplicationBuilders

- Catches exceptions on addCatalogEntry, so still adds all other catalog entries rather than aborting.
- Supports catalog entries that are application builder classes, rather than just Application sub-classes