restructured files for improved architecture