Fixed: #8
Changed: some refactoring
Changed: documentation