Relands "Add runWidget to bootstrap a widget tree without a default View" (#142344)

Reverts flutter/flutter#142339

In the original change one of the tests included the same view twice which resulted in a different failure than the expected one. The second commit contains the fix for this. I don't understand how this wasn't caught presubmit on CI.
https://dart.googlesource.com/external/github.com/flutter/flutter/+/671d8eaf715e0dfb081a84ed92c22c9944b121af
diff --git a/DEPS b/DEPS
index 08f5301..cf0bd0c 100644
--- a/DEPS
+++ b/DEPS
@@ -283,7 +283,7 @@
 
   'engine/src/third_party/dart': Var('dart_git') + '/sdk' + '@' + 'd48a76e988fbc8d6fbf4bb5e25d1a048c594eba8',
 
-  'flutter': Var('flutter_git') + '/mirrors/flutter' + '@' + 'a5ad088f7b69523de40119d118623fe32b921b04',
+  'flutter': Var('flutter_git') + '/mirrors/flutter' + '@' + '671d8eaf715e0dfb081a84ed92c22c9944b121af',
 
   'engine/src/flutter/third_party/rapidjson':
    Var('flutter_git') + '/third_party/rapidjson' + '@' + 'ef3564c5c8824989393b87df25355baf35ff544b',
diff --git a/commits.json b/commits.json
index 83f84fb..53202e3 100644
--- a/commits.json
+++ b/commits.json
@@ -1,5 +1,5 @@
 {
   "engine/src/flutter":"2e32acf4c31a70c280387860343f4474bcbb0cca",
   "engine/src/third_party/dart":"d48a76e988fbc8d6fbf4bb5e25d1a048c594eba8",
-  "flutter":"a5ad088f7b69523de40119d118623fe32b921b04"
+  "flutter":"671d8eaf715e0dfb081a84ed92c22c9944b121af"
 }
\ No newline at end of file