Ability to specify line range for git blame

Sometimes full git blame is not necessary (for example, when you want to check who changed a specific line, like for error reporting). I've added two params to repo.blame, so it's possible to narrow down amount of data processed:

```ruby
# get blame for line 25
repo.blame('lib/grit.rb', '2d3acf90f35989df8f262dc50beadc4ee3ae1560', 25)
# get blame for lines 25-26
repo.blame('lib/grit.rb', '2d3acf90f35989df8f262dc50beadc4ee3ae1560', 25, 26)
```

PS. Tests included