An abstract class that describes an intermediate widget machine that passes
input from its parent to the child, and its output from the child to the parent.
A general class that describes a type that represents a machine object which
connects to flutter widgets. Exists for implementation purposes,
and must not be inherited from directly.