A size cannot be created which would contain un-addressable cells.
That is, the maximum size has a width and height of one greater than the maximum i32.
A tick-based UI element which can be rendered, respond to events, and yield values. Typically,
a component will be re-rendered (via its render method) each frame. Each time an input event
occurs, a component may update its internal state or its external state (the State type).
Additionally, in response to an input, a component yields a value (the Output type).