Add a new Sight trait, implemented by PlacedPiece. The implementation of this trait produces a BitBoard representing the squares visible to the placed piece.