Add additional features to bssl client.

This exposes the features needed to mimic Chrome's ClientHello, which is useful
in testing. Also use bssl_shim's scopers for SSL objects.

Change-Id: Icb88bb00c0a05c27610134d618f466a24f7f757a
Reviewed-on: https://boringssl-review.googlesource.com/4113
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/tool/internal.h b/tool/internal.h
index bc87c51..277d099 100644
--- a/tool/internal.h
+++ b/tool/internal.h
@@ -32,9 +32,15 @@
 #pragma warning(pop)
 #endif
 
+enum ArgumentType {
+  kRequiredArgument,
+  kOptionalArgument,
+  kBooleanArgument,
+};
+
 struct argument {
-  const char name[15];
-  bool required;
+  const char *name;
+  ArgumentType type;
   const char *description;
 };