New scripting functional item

Previously device interaction was either through the network via messages sent from a PC (or other controller) or through buttons local to the device whose function was programmed as part of the item being controlled (for example, a button to increase the LED level).
To provide unlimited flexibility the programmed control will provided through a user scriptable approach rather than the current hard coded approach. In this way the user can specify how the button are used to control device items. As an example, a button could be used to cause the projector screen to lower and turn the LED lighting to a set colour, followed by a message to another device to turn the amp on and dim the main lights.
Scripting has been fully implemented and is gradually being added to the boards as firmware builds progress.