Modular file structure, Fixes #6