The Module Works plugin will do collision detection, etc... You might be able to write a LUA wizard or script that uses the MachAPI to do what you want to do. But the Module Works was designed with this kind of task in mind. However, you and your clients will have to learn to use the tool as you need to do a lot of tool table setups to more fully describe the tools, etc...
Steve