improve file structure, still everything broken