De-couple direct composition classes from gpu/ dependencies

This is for the purpose of moving DirectCompositionSurfaceWin and
its related classes to ui/gl, including:
  child_window_win
  dc_layer_tree
  direct_composition_surface_win
  direct_composition_child_surface_win
  swap_chain_presenter

This CL also refacors direct_composition_surface_win_unittest a
bit, creating DirectCompositionSurfaceTest so common code can
be shared.

BUG=909827
TEST=bots,gl_tests
R=sunnyps@chromium.org,piman@chromium.org

Change-Id: I787a437aa756c3b381445730abcb171473d12f51
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1600962
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Sunny Sachanandani <sunnyps@chromium.org>
Reviewed-by: Maggie Chen <magchen@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#660569}
26 files changed