First major commit

Added source files and supporting files.