allow all git-upload-* commands for deploy keys

This allows performing a `git archive` command using a deploy key (see http://feedback.gitlab.com/forums/176466-general/suggestions/3712377-easier-deploy-with-deploy-key). Tests included.
why is master hardcoded? It should be customizable