Update tests to run on windows

* NamedTemporaryFile is opened with O_TEMPORARY (a windows only flag),
  and a file opened with that option cannot be opened again.
* Account for credentials being accessed via instance metadata
  (technically not a windows issue).
Merge branch 'windows-compat' into develop

* windows-compat:
  Update tests to run on windows