First Commit. Added a main function and some simple interfaces.