Ditch the interfaces, use abstract only.