Make vector_as_array use std::vector::data and switch a few directories.

Get //base and //crypto. This revealed an IWYU problem in //components/policy,
so go and convert that too.

BUG=556678

Review URL: https://codereview.chromium.org/1441543002

Cr-Commit-Position: refs/heads/master@{#360639}
diff --git a/crypto/signature_creator_openssl.cc b/crypto/signature_creator_openssl.cc
index 0d90d50..3dc64cd 100644
--- a/crypto/signature_creator_openssl.cc
+++ b/crypto/signature_creator_openssl.cc
@@ -9,7 +9,6 @@
 
 #include "base/logging.h"
 #include "base/memory/scoped_ptr.h"
-#include "base/stl_util.h"
 #include "crypto/openssl_util.h"
 #include "crypto/rsa_private_key.h"
 #include "crypto/scoped_openssl_types.h"
@@ -70,7 +69,7 @@
 
   unsigned int len = 0;
   if (!RSA_sign(ToOpenSSLDigestType(hash_alg), data, data_len,
-                vector_as_array(signature), &len, rsa_key.get())) {
+                signature->data(), &len, rsa_key.get())) {
     signature->clear();
     return false;
   }
@@ -103,7 +102,7 @@
   signature->resize(len);
 
   // Sign it.
-  if (!EVP_DigestSignFinal(sign_context_, vector_as_array(signature), &len)) {
+  if (!EVP_DigestSignFinal(sign_context_, signature->data(), &len)) {
     signature->clear();
     return false;
   }