#25815 improve error for missing yml files when using $ syntax
Especially when moving your schema around, it's easy to misplace a yml file that is defining dynamic content. This will raise a `TankError` which has useful detail but is quite cryptic. This improves the error a bit while retaining all of the details and offers a possible solution that the specific yml file is that defines this dynamic content may be missing.
#25757 Added tank commands to "unlocalize" core.

This adds two new commands which allows for a localized configuration to
be repointed to an external core:

share_core
----------
When new projects are created, these are often created in a state where
each project maintains its own independent copy of the core API. This
command allows you to take the core for such a project and move it out
into a separate location on disk. This makes it possible to create a
shared core, where several projects share a single copy of the Core API.
Note: if you already have a shared Core API that you would like this
configuration to use, instead use the attach_to_core command.

attach_to_core
--------------
When new projects are created, these are often created in a state where
each project maintains its own independent copy of the core API. This
command allows you to attach the configuration to an existing core API
installation rather than having it maintain its own embedded version of
the Core API. Note: If you don't have a shared core API yet, instead use
the share_core command.

closes #94
Merge branch 'master' into 25760_setup_project_wizard

Conflicts:
	python/tank/deploy/tank_command.py
	python/tank/deploy/tank_commands/core_upgrade.py
	python/tank/deploy/tank_commands/setup_project.py