Removed abstract class now impl of interface is in all derived classes