Initial project commit. Add initial files and functionality.