Updated docs and refactored interfaces