Have Numeric Axis re-layout on scale update if necessary.

Calls _computeWidth() and checks if there's enough room to show
everything. If not, calls _invalidateLayout().

We should switch to using a CachingTextMeasurer for it later on.

Close #903.