Issue #7: Moves for Rook

Added the possibility to move the rook.
Also moved part of the logic to find correct moves for pieces that moves
over several squares in multiple directions into an abstract class that
inherits from piece.
Issue #5: Moves for Queen

added the possibility to move the queen.