@gilboonet thanks.
This design seems to be composed of both functional API (Old OpenSCAD API) and object API (CSG / CAG objects).
This is one of the reasons that V2 has changed. It just became too UGLY for users. And unmaintainable.
I have a couple of suggestions...
First, you can run through the code and change the signatures of function calls to match V2. This may take some time, as you need to align shapes appropriately.
Second, you can implement helper functions for this design. For example, ‘cube’. Your ‘cube’ function can provide the same functionality as the old OpenSCAD API, and place the cube to align the corner at 0,0,0.
Hope that helps.