add unit tests, update DESCRIPTION
update package documentation