setup: implement cache for upstream layer
setup: implement cache for upstream layer

Doing a git-clone of upstream yocto layers at each setup is too long. This
patch implements a cache system making the setup much faster.

The upstream layer git projects are first cloned to the download cache. Instead
of cloning from the Internet, the setup clones from the download cache. The
repository cache is updated at each setup to be in sync with upstream project.

Tracked-On: EDISON-2431
Signed-off-by: Simon Desfarges <92a5287c79a3a86956c2e8acc6f9cba89fe417f8@intel.com>

oesile/meta-intel-edison,oesile/meta-intel-edison,htot/meta-intel-edison,oesile/meta-intel-edison,htot/meta-intel-edison,htot/meta-intel-edison,oesile/meta-intel-edison,htot/meta-intel-edison,oesile/meta-intel-edison,oesile/meta-intel-edison,oesile/meta-intel-edison,htot/meta-intel-edison,oesile/meta-intel-edison