initial commit with libs and test suite