split UI logic to UI.Simple
split Utils, use semantic editor combinators
clean up Core export