Implement the 'autoSize' option of the TextShape object.

This change is the initial implementation of the 'autoSize' option, which automatically changes the size of a TextShape object to fit its text. Unfortunately, this change does not automatically invalidate the rectangle of the TextShape object and the caller must call the DisplayNode._addDirtyRectangle() to invalidate it.