Fix #20 Combine RegisterByProps and RegisterByRef to make Register