cleanup documentation and separated tests