Refactoring update
More refactor
Main interface updates