Refactored and improved user editing.