Support for multiple template repositories

A working first stab at support for multiple template repositories. Main aim is to allow for internal company repositories so that company specific templates needn't pollute the public repository.
It looks like this file also needs to be scoped with the catalog name; it contains a hash of the downloaded index (see code below). It could also, if we want to go that route, contain metadata about this catalog such as name, logo, description, link.