Shorten the generated test file names.

Also place the generated files in their own directories.

Change-Id: I51c1acf15810ec199d17cc2d6e63adebdc0fc3c9
diff --git a/api/GenerateHeaderFiles.cpp b/api/GenerateHeaderFiles.cpp
index 4b2ecc7..7475d6b 100644
--- a/api/GenerateHeaderFiles.cpp
+++ b/api/GenerateHeaderFiles.cpp
@@ -304,12 +304,12 @@
     }
 }
 
-static bool writeHeaderFile(const SpecFile& specFile) {
+static bool writeHeaderFile(const string& directory, const SpecFile& specFile) {
     const string headerFileName = specFile.getHeaderFileName();
 
     // We generate one header file for each spec file.
     GeneratedFile file;
-    if (!file.start(headerFileName)) {
+    if (!file.start(directory, headerFileName)) {
         return false;
     }
 
@@ -349,10 +349,10 @@
     return true;
 }
 
-bool GenerateHeaderFiles() {
+bool GenerateHeaderFiles(const string& directory) {
     bool success = true;
     for (auto specFile : systemSpecification.getSpecFiles()) {
-        if (!writeHeaderFile(*specFile)) {
+        if (!writeHeaderFile(directory, *specFile)) {
             success = false;
         }
     }