This PR moves the repeated overriding of expandsOnOverflow and minimumLines in the updateLayout which is repeatedly called throughout the lifecycle.
Instead, we are initializing those values at first to be defaults, and then they can be changed by the client using the MDCTextInputControllerBase API for those properties.
Tested in example to make sure this is working correctly.
Closes#8559Closes#8558
The snapshots look like they are cut in the middle, this is because they are getting their bounds using `intrinsicContentSize` which does not take expandsToOverflow into regards. See: https://github.com/material-components/material-components-ios/issues/8573 for more info.