Some documentation and refactoring
Some documentation and refactoring