Use interfaces for DataController / DataFetcher