Allow pushing a non-branch source rev to a remote branch

This change allows for specifying non-branch source revs when
pushing to remote branches. This is a capability that was broken as
part of PR #1618.

This change allows things like "HEAD", "HEAD~1", a specific SHA1, or a
local tag to be specified as the source revision when pushing to a
remote branch.

If there is an ambiguity, a local branch with the source name
provided will be preferred, so the original intent of PR #1618 will be
retained.
Merge pull request #1676 from j-a-b/src-rev

Allow pushing a non-branch source rev to a remote branch
FormCreateBranch: change label text to better match with FormCreateTag
FormCreateTagAtRevision: introduce table layout
FormCreateTagAtRevision: make commit picker work. Set minimum size.
Create Branch/Tag dialog: add icon to create button
Remove old FormCreateTag dialog
Move HelperDialogs/FormCreateTagAtRevision to CommandsDialogs/FormCreateTag
Revised icons Create branch/tag, Delete branch/tag, Checkout branch/revision, Add file to gitignore
Update GitPlugin icons
Update GitExtensionsShellEx icons (also fixed the IconResetFileTo.ico, now red, was blue). Improve RevisionCheckout icon.
fixed ico files to "3.00 format" (with IcoCur.dll / Paint.NET)
FormChooseCommit: double click behaves like OK button instead of opening the CommitInfo dialog. (RevisionGrid: add option not to show the CommitInfo dialog. Add event for double click a revision)
Merge pull request #1681 from feinstaub/topic_choose_commit_dlg

FormChooseCommit: double click behaves like OK button instead of opening the CommitInfo dialog
Merge pull request #1680 from feinstaub/topic_create_tagdialog

Remove old Create tag dialog and related changes
Navigation in the blame committer list when double clicking

(like in the blame file area on the right...)
and fix a bug where the contains of the blame committer list disappeared

Conflicts:
	GitUI/UserControls/BlameControl.cs