Stop error message when id_rsa is missing

Since we set the $Env:HOME when we launch our Git Shell, we hit 
this new code path which joins that path with the .ssh\id_rsa file.
Problem is, that file doesn't exist so we get ssh-add taking a long 
time and reporting an error.

This code path should do the same thing as the old one and return 
null if the file doesn't exist.
Support for "git flow" added

Closes #76
Added file tab expansion for diff/difftool and merge/mergetool

Closes #48
Expand 'git tfs unshelve <tab>'

This has not been tested, but the pattern is tried and true.

Closes #32
Added ability to get Posh Git to write the current repository and branch to the window title
Make Window Title prefix configurable

To enable the posh-git title with no prefix:
$GitPromptSettings.EnableWindowTitle = $true

To use a custom prefix:
$GitPromptSettings.EnableWindowTitle = 'Cool: '

Also, dashes have been removed from default prefix due to Console2 bug:
http://sourceforge.net/projects/console/forums/forum/143117/topic/3949992
add tab expansion for git cherry
Store SSH environment info in %TEMP%\.ssh

[EnvironmentVariableTarget]::User is painfully slow, because it notifies other processes of the changed value.

Closes #88
Export Get-SshPath [-File <file>]

Pretty sure GH4W has logic similar to this...might as well share.
File defaults to id_rsa.
Fix Get-SshPath

Fixes #92
Fix prompt in hidden (.git) directories
Fix status in submodules
WindowTitle is not supported by NuGet
Trap error if git flow is not available.