Reorganized modules, started adding new apis