moved some base component property setting logic to constructor. method calls were overkill.