Add support for user defined "pool" to GN.

Allow user to define pool of limited size to limit the number of
concurrent tasks that are executed for a given set of tools. The
pool object directly correspond to a ninja pool and can be shared
by multiple targets.

Design document:
https://docs.google.com/document/d/1b598i4WmeFOe3_iRBrjPKSXdcR5R32UPtgxqKmoY2-M/view

BUG=612786

Review-Url: https://codereview.chromium.org/2006923004
Cr-Original-Commit-Position: refs/heads/master@{#397917}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 40451c5093a4108bf65d3aae30bea2ab014f4b94
23 files changed
tree: 10cd2e8cb5f92996795d9c937caf136770b9033a
  1. tools/