Subclassing useing interfaces. Kinda.