Initial implementation of GadgetCatalog which can handle:
- multiple gadget repositories
- multiple gadgets per repository
- API to select proper gadget based on what it provides.