reset: Allow the selective reset of pathspecs

Not done yet. But I'd really like some early feedback on the API and proposed behavior

- [x] Initial implementation
- [x] Add some more tests (non existing path in Tree, conflicts removal, ...)
- [x] Add git-bash commands output above the tests
- [x] Gather feedback
- [x] Post review fixes