Having fun with chess class design