Total rework to improve structure, make maintainable and give space for multi version support.
Major tidy up underway