wip: moving around modules, creating classes, trying to eliminate memory consumption @Wip