smart http mode in git 1.8.2 and above...

...needs a specific header at a certain point

see 4656bf47fca857df51b5d6f4b7b052192b3b2317 in git.git for an
explanation.

People who use the old gitolite with newer gits will probably see error
messages that don't spell out the user, the repo, the operation, etc
clearly.

Of course, this only applies to the case where the "first check", where
the user has NO access to the repo and is being kicked out even before
control passes to git-*-pack.  Any errors after that should work fine
anyway, since they come direct from git-http-backend, not gitolite.
(minor) git version change necessitated some test changes