- added documentation
- refactorings