Modularized the source.

This was done to make it much easier for multiple developers to work on
content for each module.