GN: Add notion of 'complete' static libraries, akin to GYP.
In general, GN assumes that static libraries are intermediate targets and
will forward their child dependencies up the tree until a "final" target
is reached. Until now, this meant only shared_library and executable targets.
This change introduces the notion of a "complete" static_library target
which is linked and, as such, suitable for distribution.
BUG=413776
TEST=gn_unittests
R=brettw@chromium.org
Review URL: https://codereview.chromium.org/
565283002
Cr-Commit-Position: refs/heads/master@{#294709}