Add --no-history option to fetch and gclient for shallow clones.

Many people have complained on chromium-dev about the long times
required to perform a full fetch over a DSL. This seems to be mostly
due to the huge size of chromium's history (~9 GB). On the other side,
not everybody is interested in downloading the full git history of
the projects. The size of git packs to fetch a working HEAD is one
order of magnitude smaller (1.5 GB).
This change makes it possible to perform a shallow clone (in a way
which is consistent with DEPS, leveraging git templates on clone),
reducing fetch times by 80% for those not interested in the history.

BUG=228996