Simulate Windows Run Dialog behaviors in the CMD worlflow

Win+R 的运行实际上对输入的处理做了不少事情，这样就能尽量代替 Win+R 了。

一些参考：
* http://undoc.airesoft.co.uk/shell32.dll/ShellExecCmdLine.php
* Pseudocodes of Shell32.dll in Windows Server 2012 R2 generated by IDA:
   * [CRunDlg::OKPushed](https://gist.github.com/anonymous/bb0581d062ae82169768)
   * [ShellExecuteCmdLine](https://gist.github.com/anonymous/7efeac7a89498e2667d5)
   * [PromptForMedia](https://gist.github.com/anonymous/4900265ca20a98da0947)
* [leaked Windows 2000 source codes](http://www.kuro5hin.org/story/2004/2/15/71552/7795):
   * [rundlg.cpp](https://gist.github.com/anonymous/d97e9490e095a40651b0)
   * [exec.c](https://gist.github.com/anonymous/594d62eb684cf5ff3052)
* http://www.pudn.com/downloads10/sourcecode/windows/file/detail43070.html

关于这些 P/Invoke，我会尽快的尽量修改成原生的代码。
（其实有些已经能找到 .NET 中近似的，但是我尚不明确他们在一些特殊的情况下结果是否一致，我需要更多的时间验证）

除此以外有几个小 bug 的修复。