tweaked getPieceByDirection()
factored out _verifyRowCol() and _verifyIndex(), added tests