Update `Shape::Equals()` to have proper default comparison for unbounded shapes.
Update `Shape::Equals()` to have proper default comparison for unbounded shapes.

Previously, the default `Shape::Equals()` used `ShapeUtil::SameDimensions(lhs, rhs)` to check whether the two shapes are equal. However, the implementation of `ShapeUtil::SameDimensions()` was updated such that when one the dimension of one shape is unbounded, it compares equal for each dimension.

The default behavior should be that unbounded size compared to any size other than unbounded size should compare not equal.
