Added initial code files

TODO: Clean up code, ensure that comments are clear.