move system registration into a separate module