Cotton candy

Merging the Cotton Candy branch into master so that stability engineering work can proceed against master rather than a side branch.

This merge is bad practice, which has been caused by CC being on a branch for far longer than it should have been.

The major addition here is:

-> Threading fixes for DynamoController, DynamoLogger
-> Separate RenderManager into separate class
-> Fixes to the engine and Live Runner for various things that fuzz testing found
-> Start of refactoring of fuzz tester into proper framework

A couple of the pieces of work around visualisation represent substantial forward progress, but are by no means 'done'. However, this needs to go in sooner rather than later, to ensure that further work is built on top of its fixes.