Okay, I have made the code as modular as I can with the time I have to work on this.

I have made a package that a friend has sucessfully installed with great ease.

it looks and works just like the original:

I need to just tidy up the .zip file and clean up the .dax file for OrangeCD and I shall give it to you masses.