NSIS: Reload shell after registering shellextension, use blackslashes

It also registers and unregisters the shell extensions properly and
forces explorer to reload/unload the DLLs so they can be removed.
This obsoletes #2377.

Fixes #2487
Fixes #2377