registration overhaul (WIP)
merge