fixes #8
add tests