The assumption of everything starting at `onInit` breaks when browsers
triggers `attributeChanged` first after parsing HTML. This buffers all
property initialization after `onInit` logic for more predictable
behavior
`onChanges` now introduces an `attribute` in its arguments and
repurposes the `property` to be used for this.props lookup
- `property` is now the camelCase key for `this.props`
- `attribute` is the kebab-case attribute name (i.e., what used to be
`property` before v5)
- Remove thrown error if type difference is found in defined props
- Introduce strictProps toggle for error behavior
- Extract size changes to its own log file