Fire both kinds of actions on key down.

If we only fire text input control actions when text input mode is
active, then the console can't get the toggle console action to close
itself.
Preserve precision in unscaled size estimation.

Don't throw away the floating-point precision when estimating the
UI-space size, this leads to some weird rounding errors further down.
Add easy way to promote Vec2 to Vec3.
View components can now be measured.

The name Measure() was chosen instead of GetSize() or GetDimensions() to
indicate that the process of determining the size may be a relatively
expensive operation and isn't necessarily just a member variable lookup
-- for example, a label must actually perform the entire PrepareRender
step.
Hook up log cleared/added events.