Add PathspecsOptions to Repository.Diff.Compare()

All the overloads can now report and/or fail upon unmatched pathspecs.
By default, the behaviour is strict (exception thrown if no PathspecsOptions
is passed).
Add PathspecsOptions to Repository.Reset()
Add PathspecsOptions to Repository.Index.Unstage()/Stage()