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