Preparation for multi file commit.

Addition of MultiSelection changing type of the CommitCommand Handler.
Next will be modifying the Commit Command.
Added multi-file+folder commit support.

This allows you to select multiple navigation nodes and commit them. This is an extension of PR #286,
and enhances support for it.

But here comes a question: Should I remove the CommandUpdateHandler?
This command can get too CPU intensive in some cases, because of recursive directory searches.
We have the MessageBox on operations that cannot be done. I'll add another commit if we need this.
Fixes that lluis asked for:
Changed algorithm of Commit to handle multi-repository commits.
Moved FindMostSpecificParent from CreatePatchCommand to VersionControlItemList
in case we need it somewhere else too.
Fixed UpdateHandler for Commit.
Refactoring getting Repository member.
Merge pull request #287 from Therzok/commitMultiFile

Multi-File+Folder selection commit