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.
Style-wise, pattern matching the option is considered better.