Adding canMove functionality to Piece metaobject. It should know generally if a move is legal.