Allow the creation of custom components that can be easily managed through the add component screen with script changes in one central location. Currently a script must be added as a script template then the script body written each time the script is used, or a template is created that is standalone. The former introduces maintenance overhead any time the script needs to be changed (it will need to be changed in all locations that it is used in different templates) and the latter method causes poor organization.