Inheritance, Error Handling, Private Methods, Chess