Add documentation
Add namespace and base class
remove target
add tests