improve test coverage
add license info and cleanup inline documentation