These changes were taken from https://github.com/ppy/osu/pull/22582.
Minor adjustments were applied to match stable expectations, which is to
say there cannot be an inherited control point with omit barline
specification (in the editor the setting is greyed out when inheritance
is turned on).
This is quite a breaking change, but I think it is beneficial due to the large amount of usage of this class.
I originally intended just to remove the allocations of the two delegates handling the `Changed` flow internally, but as nothing was really using the bindables for anything more than a general "point has changed" case, this felt like a better direction.