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.
yeah when we fix the issue we will remove the this._isSetup flag (since it will be trivially always true) so then we will find all this stuff that references and be forced to clean it out (by tsc)