WIP: Diff enhancements

Adding support for ```Git::Raw::Diff->find_similar()``` and ```Git::Raw::Diff->format_email()``` here. 

Also refactoring the way that we actually parse options to reduce the silly amount of boilerplate.