TemplateFreeWorld - replacing compile time polymorphism with runtime pol...

...ymorphism
This can just stay a struct.