Don't pipe input to subprocesses, since it breaks Windows

Explanation of problem:
* http://www.gnu.org/software/emacs/windows/Sub_002dprocesses.html

Summary of changes:
* New buffer-local var magit-run-input-file used for holding temp file names during async git call
* Delete these temp files for both sync and async calls
* Remove special handling for input in magit-run*
* Rename some arg names for clarity (s/input/file/g)
* Use new temp file instead of "-" in some git calls