Git backend - 

Hi, @rafaspadilha @reidka @ealonas, I'm doing a PR of my work on gitbackend as Karen requested. 

I have all tests passing.

```ruby
#Running git tests
bundle exec rake test TESTOPTS="-v" TEST=lib/repo/test/git_repository_test.rb
```

But, does git backend work?  **No (at least not yet)** 
Using MarkUs, I discovered that it is not working.

For example, the view that uses the GitRevision is not working http://demo.markusproject.org/en/assignments/1/submissions/13/repo_browser
maybe because I made a wrong choice using a git commit as revision

Also, there are some missing tests related to AbstractRevision. These tests are missing both on svn and git files tests (lib/repo/test). So, I saw the problem when all tests were working.

I'll take a look this week and next one, trying to make it work.

##### About the gems
Well, rugged gem is not the best to understand, the documentation is poor, so I used their unit tests to understand what it can do. Gitolite gem is more easy.

#####Posts on the blog about gitbackend:
http://blog.markusproject.org/?cat=183