Peregrine interview question

Design models and interfaces for a chess program.