Convert aes_test to GTest.

This introduces machinery to start embedding the test data files into
the crypto_test binary. Figuring out every CI's test data story is more
trouble than is worth it. The GTest FileTest runner is considerably
different from the old one:

- It returns void and expects failures to use the GTest EXPECT_* and
  ASSERT_* macros, rather than ExpectBytesEqual. This is more monkey
  work to convert, but ultimately less work to add new tests. I think
  it's also valuable for our FileTest and normal test patterns to align
  as much as possible. The line number is emitted via SCOPED_TRACE.

- I've intentionally omitted the Error attribute handling, since that
  doesn't work very well with the new callback. This means evp_test.cc
  will take a little more work to convert, but this is again to keep our
  two test patterns aligned.

- The callback takes a std::function rather than a C-style void pointer.
  This means we can go nuts with lambdas. It also places the path first
  so clang-format doesn't go nuts.

BUG=129

Change-Id: I0d1920a342b00e64043e3ea05f5f5af57bfe77b3
Reviewed-on: https://boringssl-review.googlesource.com/16507
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/sources.cmake b/sources.cmake
new file mode 100644
index 0000000..185e961
--- /dev/null
+++ b/sources.cmake
@@ -0,0 +1,10 @@
+# This file contains source lists that are also consumed by
+# generate_build_files.py.
+#
+# TODO(davidben): Move the other source lists into this file.
+
+set(
+  CRYPTO_TEST_DATA
+
+  crypto/fipsmodule/aes/aes_tests.txt
+)