major refactor, UI revisions