Prototypes now store the componentName related to the corresponding class
Moved target functionality into a trait, to better deal with untargeted effects
Messaging is handled in the Oupput trait instead of having to implement it in all the subclasses
Now keeps track of inputs
executeInstructions moved down from StagehandComponent to ScriptComponent
change from def to val to avoid creating too many objects
start creating an AST type for better isolation of shit