Factor out Process.Start("explorer.exe", "/select, " + filePath); in class OsShellUtil (renamed from OpenWith)
GitCommands.GitModule: replace List with IList in public interfaces and fix consequences in other modules.
GitCommands.GitModule: add new method GetTagHeads to get a list of tags, optionally sort by commit date. Use new method in FormPush.
fix cast error
Replace IList with IEnumerable. Write .Any() instead of Count != 0. Eliminate List casts by using .Concat and .OrderBy.
FormGoToCommit: add "Quick jump to tag" with autocomplete.
GitModule: improve arguments of GetTagHeads and use it in "Quick jump to tag" in FormGoToCommit.
FormGoToCommit: improve tab order
FormSettings: move to subfolder Settings
untabify and format code
FormSettings: move to subfolder SettingsDialog to avoid namespace conflicts. Add empty SettingsTreeViewUserControl.
FormSettings: add tree view to the left (warn: opening and saving dialog messed up with some tab pages layout)
Move settings tag "Checklist" to user control ChecklistSettingsPage. Move logic (step 1: 64 compiler errors)
62 errors
Introduce new class CheckSettingsLogic and move code there (82 errors)
Move MergeToolFix_Click (87 errors)
Merge branch 'pr/n1408_feinstaub'

Conflicts:
	GitCommands/Git/GitCommandHelpers.cs
	GitCommands/Git/GitModule.cs
	GitUI/FormCommit.cs
Merge branch 'pr/n1431_feinstaub'
FormOpenDirectory: replace Browse button with user control. Add icons. Rename title from "Open repository" to "Open local repository"
Use FolderBrowserButton in FormPull and FormPush