Per project protection
Fix ssh key fingerprinting test to use exitcode
Connect to database with git user, not gitlab
Run db:setup and db:seed_fu before gitlab:setup
Added relative urls to other documentation files, removed duplicate debian update commands
API documentation extended with infos to project branches
Fix file_name for archive
Fix file_path to correspond with the name
fixed API access to the project
API documentation extended with snippets, tags and commits

Documentation is updated with information how to handle snippets or how to access tags
and commits. Nearly all project specific functions are now described in the documentation.
A few previous entries have been updated with status codes, e.g. `401 Unauthorized`.
Nginx: edit actual file instead of symlink
Added creation of pids directory to fix #2995, replaced deprecated nginx init.d command with service one, some more clean-up
Merge pull request #3003 from livedata/patch-1

fixed API access to the project
Merge pull request #3002 from nafu/repo_patch

Fix file_name for archive
Merge pull request #2994 from dasbh/master

Fix gitlab:setup task on fresh installation
uppercase Gitlab version and revision constants. check api return gitlab version now
Merge branch 'features/attachment_server' of /home/git/repositories/gitlab/gitlabhq
API: fixes visibility of project hook

When a user is not authorized to see the list of hooks for a project, he is
still able to access the hooks separately. For example if access to
`GET /projects/:id/hooks` fails and returns a `403 Unauthorized` error it is
still possible to access a hook directly via `GET /projects/:id/hooks/:hook_id`.

Fixes access, also added tests to check access and status codes of hooks.
Sort groups alphabetically on dashboard page
Sort groups/namespaces by human name