- More refactoring and adding documentation.