Better integration of repo with project features.

- Added new routing scheme for repo /project/repo/...
- Added git controller class
- Projects now create repositories upon creation
- Repositories load the correct default branch
- Repo can handle empty repositories without an error
- Modified binary handling behaviour in viewer
- Added validation to project name (AZaz09-_)
- Correct redirection for repository access
- Removed carp as a default testing repo
- Modified setup.sh so it doesn't pull down carp anymore