merged from <https://github.com/rrnewton/hgdata/blob/fusiontable01>
Merge branch 'master' of github.com:rrnewton/hgdata_mirror
Improve getCachedTokens to skip refresh when not expired and to write full expration time to the file.
bump version
Fixes to getCacheTokens
Add a helper function for catching exceptions and retries.
minor: improve error message
backpedal: don't expose retryIORequest.  It's not general enough.
revised constraints on package dependencies
merged changes to .cabal file with previous changes
improved portability to Windows
fixed download of books metadata so it includes continuation requests
removed lint
fixed handling of unicode for google storage
removed obsolete comment
reorganized exception handling when walking file tree
stored log file for successful build in case this is needed later to untangle valid combinations of package dependencies
prevented following of symbolic links in google storage synchronization