Introduce simple register helper + add basic self registration logic