Some work towards removing ctors logic and reflection

CS: no space between method name and ()