restructuring into submodules with Preludes as interface, and Base as base module