AlmostTemplateFreeWorld - replacing compile time polymorphism with runtime polymorphism

Leaving templates in the websocket_transport