add api doc

fixes #8