refactor to use a constructor
add unlock() test
docs
add .retry()
remove old examples
docs
Release 2.0.0