For #25252 - Fixes edge-case bug in as_template_fields.
The edge case is when the entity relationship is out of order (e.g. the Step folder is at the root) and there is a concrete match between template and path.  This resulted in the fields being partially populated in the first phase of resolution which then caused problems in the second phase!
Closes #74
removed duplicate parameter in setup_project.py
Fixed bug #25556 in register publish when storage is a drive on Windows.
This would result in the first character of the path_cache field being
cropped off which then stops find_publish from working!
For #24475 - Resolution now JIT for user sandbox folders
Previously the user was always resolved even if the folder didn't need to be created making it impossible to create any folders without a valid user.
Closes #73
Merge pull request #75 from Byron/patch-1

Removed duplicate parameter in setup_project.py
#25586 [minor] cache_apps command now checks frameworks.
Previously, it would only check apps and engines.
For #25555 - Framework & engine blocks can now be included in envs
This is consistent with the existing support for apps.
For #25582 - Resolved recursive trap in frameworks install.
If an APP required frameworks A and B and framework A also required framework B and none of the frameworks had been installed, an exception would be raised because of the depth-first manner the recursion was carried out. Changed to breath-first to that the environment object is correctly representing the changes that are carried out as part of the recursion.
For #25555 - Added error message for referenced framework install.
This is similar to the message which is already current generated if apps or engines are installed into referenced sections.
Closes #77
Merge branch 'master' into 25483_core_as_zip
Updated zip again!