Replace escapeshellarg with Util class

Compability for Windows usernames and passwords. When usernames and passwords contain characters that are rawurlencoded to a string containing a % sign (e.g. @ becomes %40), the procent was replaced with a space. Git can therefore not authenticate.

Update: this pull request now replaced all escapeshellarg functions with a new ProcessUtil class, which has an escapeArgument method.