slim down Component constructors