This adds the --config-dir option to specify an alternative to ~/.gyp
for finding include.gypi (and other configuration options).

The user may also set GYP_CONFIG_DIR.  Tilde expansion will occur on
the given value.

This change was motivated by needing to have multiple environments
that want different defaults, such as the ChromeOS simple workflow,
which forks its own shell, but keeps env vars like $HOME. It had to
then share ~/.gyp with regular chrome builds, and we'd like to avoid
having to swap the include.gypi contents each time we build in a
different shell, or resetting $HOME to something else.  With this CL,
we can just set GYP_CONFIG_DIR as part of the environment in that
shell, and keep separate include.gypi files without having to reset
$HOME.

The defaults do not change the behavior from what it was before.

I also alphabetized the options.

BUG=none
TEST=Ran new unit tests (and all gyp tests)
R=bradnelson@google.com

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

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