This adds a new environment variable to point to the bin path. This is useful for custom tool packagers.
We also unified the implementation of shell and custom tool environments in the new Shell.environment function.
There are some minor changes to the custom tool environment that come along with this change, such as running in the directory of the imported package. To my knowledge, I'm the only one who will notice.