Include the implemented header first in all projects.

The Google C++ style guide dictates that foo.cc and foo_unittest.cc
should include foo.h in the first place, so missing headers in foo.h
are detected with a compile error of the module implementing them and
not when another module uses them.

This CL sweeps across all the .cc file in platform2 enforcing this.

BUG=None
TEST=cbuildbot amd64-generic

Change-Id: I41835835caba13f54c3c844ecf552eb0e47efa9d
Reviewed-on: https://chromium-review.googlesource.com/228894
Tested-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: Alex Deymo <deymo@chromium.org>
Commit-Queue: Alex Vakulenko <avakulenko@chromium.org>
diff --git a/buffet/states/state_manager_unittest.cc b/buffet/states/state_manager_unittest.cc
index df2260a..bdfad8c 100644
--- a/buffet/states/state_manager_unittest.cc
+++ b/buffet/states/state_manager_unittest.cc
@@ -2,6 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+#include "buffet/states/state_manager.h"
+
 #include <cstdlib>  // for abs().
 #include <vector>
 
@@ -13,7 +15,6 @@
 #include "buffet/commands/unittest_utils.h"
 #include "buffet/states/error_codes.h"
 #include "buffet/states/mock_state_change_queue_interface.h"
-#include "buffet/states/state_manager.h"
 
 using buffet::unittests::CreateDictionaryValue;
 using buffet::unittests::ValueToString;