Add docs, tests