fix/update/add: tests were improved, and the quality of the API as well; closes #9 & closes #10