Remove base::Value::CreateNullValue

This change removes base::Value::CreateNullValue in favor of Value's default constructor. In particular, this change

- Replaces |Value::CreateNullValue()| with |MakeUnique<Value>()|.
  - Adds #includes of base/memory/ptr_util.h where needed.
  - Replaces |std::unique_ptr<Value>| with |auto| where appropriate.
- Replaces |*Value::CreateNullValue()| with |Value()|.
- Replaces |Value::CreateNullValue().release()| with |new Value()|.

BUG=646113
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel

Review-Url: https://codereview.chromium.org/2792573002
Cr-Original-Commit-Position: refs/heads/master@{#462794}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e067999ab52ac73c13981b100f3ebcf9c62ef817
diff --git a/tools/gn/desc_builder.cc b/tools/gn/desc_builder.cc
index c04fad6..965ec92 100644
--- a/tools/gn/desc_builder.cc
+++ b/tools/gn/desc_builder.cc
@@ -122,17 +122,17 @@
   }
 
   ValuePtr RenderValue(const std::string& s, bool optional = false) {
-    return (s.empty() && optional) ? base::Value::CreateNullValue()
+    return (s.empty() && optional) ? base::MakeUnique<base::Value>()
                                    : ValuePtr(new base::Value(s));
   }
 
   ValuePtr RenderValue(const SourceDir& d) {
-    return d.is_null() ? base::Value::CreateNullValue()
+    return d.is_null() ? base::MakeUnique<base::Value>()
                        : ValuePtr(new base::Value(FormatSourceDir(d)));
   }
 
   ValuePtr RenderValue(const SourceFile& f) {
-    return f.is_null() ? base::Value::CreateNullValue()
+    return f.is_null() ? base::MakeUnique<base::Value>()
                        : ValuePtr(new base::Value(f.value()));
   }