#25240 #25450 Tank command tweaks and improvements

A number of smaller improvements and refinements of the tank command.

- Improved the error message you get if you run tank Project foo from a
project specific tank command.

- Added support for a digits only syntax, so that the tank command will
correctly find a shot named 123 when the command tank Shot 123 is
executed. If no shot named 123 is found, the tank command will fall back
to its previous behaviour and assume 123 is a shogun id and use that for
the lookup instead.

- For explict id lookup (which is also faster), you can now use a 'Shot
@123' syntax to look for a Shot with id 123.

- If you are running a project tank command, the project prefix syntax
(tank Shot bunny:foo) is not valid since the project is implied by the
fact that you are running the tank command for a particular project.
Previously this logic was less clear.

- If you are running the tank command out of a project config CWD
without params, (e.g. ./tank) it now gives you the project context.
Previously it would only give you the empty context.

Please note that this means that the behaviour of the tank command
changes slightly:

If you are currently launching entities via their ids (tank Shot 123)
and also have your shot named numeric codes, this change means that the
name suddenly takes precedence, meaning that there may be a change in
behaviour as a consequence. We recommend that in this case you tweak
your code to include the @ symbol (e.g. tank Shot @123) to explicitly
use ids. This should also be slightly faster.

Closes #76