This introduced the source cache which is used in sources to avoid full staging and will allow fetching of sources from a configured remote CAS. Part of #440