Split slower tests to a separate test target

If a test binary didn't change in a CL, ATP will skip running it. Right
now, all update engine unittests are packed into a single target called
update_engine_unittests. This is bad, as any changes in code will cause
this test binary to change, triggering re-run of all test cases.

This CL splits some of the HTTP related testcases to a separate test
target. We rarely change HTTP related code, and these test cases take a
long time to run. For majority of code changes that don't touch HTTP,
ATP should be able to skip running HTTP testcases and save us time.

Test runtime:

1. http unitests: 3min
2. all other update_engine unitests: 3min

Test: th
Change-Id: Ieb5bf986a5fedf38710d96a4a9c974e5a1c1491d
diff --git a/common/mock_http_fetcher.h b/common/mock_http_fetcher.h
index ea5b83d..3d7859b 100644
--- a/common/mock_http_fetcher.h
+++ b/common/mock_http_fetcher.h
@@ -36,7 +36,7 @@
 // MockHttpFetcher will send a chunk of data down in each call to BeginTransfer
 // and Unpause. For the other chunks of data, a callback is put on the run
 // loop and when that's called, another chunk is sent down.
-const size_t kMockHttpFetcherChunkSize(65536);
+static constexpr size_t kMockHttpFetcherChunkSize(65536);
 
 class MockHttpFetcher : public HttpFetcher {
  public: