some tests and documentation