Check for newer version and write version.properties in launcher
Ignore latest version if it has a launcherGeneration not matching ours

We could also address this by adding a separate latest URL for newer
launchers, but I guess this gives us more options in the future.
Use a temp file to write version.properties atomically
Wait 4 hours after a successful latest-version check to try again
Make explicit that we're dumping newlines when reading json from /latest
Merge pull request #148 from typesafehub/wip/havocp-updater

Check for and update to newer versions