Commit library

Adding library and tests