Refining

- [x] Export all needed structures and methods
- [x] Refine names
- [x] Increase coverage
- [x] lint and improve docs