openjscad tools refactored