First Commit

Basic implementation.