Improve interface & cleanup