ux improvements, refactoring