Recognize HEAD and ROOT as aliases for @HEAD and @ROOT.

I often use `HEAD` myself, without thinking, from long habit with Git. Since
this `HEAD` and `ROOT` are reserved words that cannot be used as change names,
anyway, allow them to operate as if the `@` is implicit.

Not going to allow any other bare strings to operate as tags, for now, since
they can always become change names, which might confuse things. It's the use
of `HEAD` that was really bothering me, though. Closed #119.
Prevent already-installed templates from triggering failures.

Need to globally mock out `system_dir` and `user_dir` to point nowhere in
order to prevent any templates in the testing user's home or system Sqitch
config directories from borking the tests.