Add a ChessOpening retriever class.

Extract ChessMoveListDataRetriever into its own class.
Add new ChessOpeningDataRetriever class.