completed check, checkmate, and movement functionality. reorganized code and started refactoring.