Switched to HttpClient.

1) Updated DLL paths in Product.wxs to be more uniform. Makes it easy to
add debug files for testing and I only need to reference the
UnofficialDDNS project.
2) Ditched HttpWebRequest and migrated to HttpClient, much better.
Actually supports CancellationToken! Slightly less code too.
3) Slightly improved LogSingleton since it was logging too fast. Event
ID is now a chronological counter.
4) Fixed InvalidOperationException when user cancels the TaskDialog and
working thread calling Close() afterwards.