AU/unittest: postinstall tests use uniquely named stateful + working directories

This should allow these tests to be run in parallel. Also includes an
extension to PostinstallRunnerAction and two global powerwash marker
utility functions to allow testing with uniquely named marker file paths
(necessary to avoid race conditions when multiple tests are run in
parallel).

BUG=chromium:236465
TEST=Uniquely named directories created, used and removed.

Change-Id: I5dde0c0732c51e9e3bb2240cf7e0cac03bcde529
Reviewed-on: https://gerrit.chromium.org/gerrit/60864
Commit-Queue: Gilad Arnold <[email protected]>
Reviewed-by: Gilad Arnold <[email protected]>
Tested-by: Gilad Arnold <[email protected]>
diff --git a/test_utils.h b/test_utils.h
index 4285c4d..6d3c5bd 100644
--- a/test_utils.h
+++ b/test_utils.h
@@ -62,6 +62,10 @@
   return mkdir(path.c_str(), mode);
 }
 
+inline int Chdir(const std::string& path) {
+  return chdir(path.c_str());
+}
+
 void FillWithData(std::vector<char>* buffer);
 
 namespace {