started working on code organization. Necessary for transparency for optimizations...