magit-with-emacsclient: start the server if necessary on Windows

Start the server if it is not running yet on Windows too.  Previously
this was not done on Windows, and there is no reason that would justify
that exception.
magit-with-emacsclient: delete leftover server

It is possible that a server file is not properly deleted after the
Emacs instance in which the server was running has terminated.  That
could happen if Emacs has crashes; there might be other reasons.

If the `server-name' is "server", then this isn't a big problem as we
then just append the pid of the process to the `server-name' and use
that instead.  If the server named "server" does indeed no longer exist,
that is not so nice, because we needlessly use a non-standard name.  But
we cannot do anything about it without jeopardizing performance (by
attempting to connect to the server, just to see whether that works).

If we cannot use "server" then we append the pid.  In the unlikely case
that the server file for "serverPID" already exists, we now
unconditionally force delete that server.  That server cannot possibly
be still in use because PID is unique and we already know it is not
running in the current instance.
magit-with-emacsclient: remove a needless check

In one particular case do not check whether the `system-type' is
`windows-nt' because the value of `server-use-tcp' is what is relevant
and that we also check in the same place.
magit-with-emacsclient: cosmetics
magit-with-emacsclient: correct bogus server-use-tcp

On startup `server-use-tcp' is set to t if local sockets cannot be used.
That doesn't protect users from later setting it to nil, so we now undo
that mistake if necessary.