Modular branch

The whole project structure has been broken down into a more manageable form, nothing is broken. This branch has accomplished its purpose.