simplifying constructors and inherited interfaces