Improving our bootstrap flexibility

Blurb:
This piece is an addition to the all inclusive Maya bootstrap post from earlier.
This post will explore how to increase flexibility across projects.
Tutorial:
Since developing the system I found using multiple batch files for multiple projects was not particularly scale able.
Multiple changes to multiple files needed
Tiny changes had to be replicated multiple times without error
Irritating to constantly diff files to check the changes are made across all project setups
Not project scale-able
At this point I had two projects using the system and was about to upgrade to a third, things had to change so that the project could be leveraged more easily across projects.
Using the approach detailed below we can customise our Maya sessions per project very easily:
Different export locations
Different tool setups
Different icons and boot logos
etc.

THE MASTER BATCH FILE:
https://gist.github.com/ben-hearn-sb/94a4e16b5759d30ce42a446ed948010b
The MASTER batch file serves as a central hub for elements such as:
Plugins
Trunk/Source pathing
Maya Icons directories
User setup script locations
Python Pathing
https://gist.github.com/ben-hearn-sb/683ac84fd97aad7c0c0b28978ca8d933
The CHILD batch file simply passes parameters you have set to the MASTER file.
The MASTER file then uses these parameters and constructs any relative pathing that is necessary for the Maya session.
Advantages to using this approach:
Changes to master env vars, python path etc. only need to be made in one location
Very easy to set project specific maya startup images, icons, modules etc.
New projects can be added easily with minimal setup
Restrict access to certain tools and pathing locations
Provide different projects with different toolsets