Added more interfaces and implemented a couple.