Add Windows upgrade support

As suggested in the email, perhaps it is worth while to factor out getLockPort and waitForParentExit from cmd/syncthing/main.go into osutil as public methods, and reuse those instead of my os.FindProcess implementation.

Also, not exactly happy with the hackery of injecting '-upgrade-check' flag just to be able to divert the code where I want.
This needs to be `+build windows,!noupgrade` so we build correctly when `noupgrade` is set.