add tests and remove some wrappers