implement error throwing
test for error throwing and bug fixes
v0.0.4 and docs