Add unmatched pathspecs options

This is related to libgit2/libgit2sharp#274

- [ ] :zzz: Implementation in progress
- [ ] :flashlight: Ready for review

Points of attention:
- `Remove()` is not included in this PR.
- This PR includes some bug fixing related to libgit2/libgit2sharp#330 (the bugs were there before, they were just put into light by the aforementionned PR)