moves implementation for queen
moves implementation for bishop
moves implementation for knight
cleanup: make get moves method abstract in base class