1-5% faster gyp: Use a simpler deepcopy.

The system deepcopy supports recursive objects or non-tree structures.
Those structures don't exist in gyp so save 2-3 seconds
CPU time (0.3-1s clock time with 8 cores) by using a simpler
implementation.

Patch from bratell@opera.com.

BUG=362075
R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/233283002

git-svn-id: http://gyp.googlecode.com/svn/trunk@1908 78cadc50-ecff-11dd-a971-7dbc132099af
gyp: Optimize IsStrCanonicalNumber for common case

IsStrCanonicalNumber is called on everything in a gyp file
and for a build system the size of chromium that meant spending
about 2 CPU seconds in it. By hand optimizing the execution of
the common case (which is not a number) that can be cut do less
than 1 CPU second.

The save of 1 CPU second (3%) translates to roughly 0.2s execution
time (0.6%) with 8 cores. YMMV

Patch from bratell@opera.com.

BUG=362075
R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/228043009

git-svn-id: http://gyp.googlecode.com/svn/trunk@1909 78cadc50-ecff-11dd-a971-7dbc132099af