Add analysis-test test framework (#110)

This framework allows for easy creation of unittest-like tests to make assertions
on the provider-values returned by real targets.
diff --git a/tests/BUILD b/tests/BUILD
index 5bd929d..d91aeb1 100644
--- a/tests/BUILD
+++ b/tests/BUILD
@@ -11,6 +11,7 @@
 load(":shell_tests.bzl", "shell_test_suite")
 load(":structs_tests.bzl", "structs_test_suite")
 load(":types_tests.bzl", "types_test_suite")
+load(":unittest_tests.bzl", "unittest_passing_tests_suite")
 load(":versions_tests.bzl", "versions_test_suite")
 
 licenses(["notice"])
@@ -39,11 +40,14 @@
 
 types_test_suite()
 
+unittest_passing_tests_suite()
+
 versions_test_suite()
 
 bzl_library(
-    name = "unittest_tests",
+    name = "unittest_tests_bzl",
     srcs = ["unittest_tests.bzl"],
+    visibility = ["//visibility:private"],
     deps = ["//lib:unittest"],
 )
 
@@ -52,7 +56,7 @@
     srcs = ["unittest_test.sh"],
     data = [
         ":unittest.bash",
-        ":unittest_tests",
+        ":unittest_tests_bzl",
         "//toolchains/unittest:test_deps",
         "@bazel_tools//tools/bash/runfiles",
     ],