Autoupgrade + small refactoring

in fact easier way is to create method registration_ui which internally can cache it to `@registration_ui` if you want or just create new instance.