refactoring; cleanup
updated sphinx config
updated documentation
updated documentation
refactoring; fuctional separation; cleanup