restructured files in a probably stupid way to allow logic reload