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.
if we doc this as "has to be url-friendly" or something it might save us some future grief - elsewhere in the codebase (template validation I think) we have a validator for url friendliness that just url encodes a string and checks that it doesn't change when encoded.