improve test names
bump version to 1.0.1
change internal code to be simplier to read