Add emptySpace() to ChessBoard.

I've added a function to determine if a position on the ChessBoard is
unoccupied. I added this because I kept writing:
if (getPiece(r,c) != null)
over and over again. Now I can say:
if (!emptySpace(r,c))
which reads cleaner.
Add check for clear diagonal.

I have been ignoring diagonal movement in my hasClearPath() method. This
adds some really ugly code, which I will refactor later.