Don't force garbage collection on shutdown.

Doing so causes crashes on Windows and isn't needed anymore
anyways, since we have started tracking weak references
meanwhile.
Use concurrency::wait on Windows to sleep.

The chrono + sleep_for implementation seems not to work,
due to bugs in chrono header file.  And after all sleep_for
calculates a time_point for sleep_until, which calculates
the delta again and finally passes the number of
milliseconds to concurrency::wait ...