Always add the original scope when matching rules to display objects

This fixes an issue that caused flags not to be deactivated
Add a way for display objects to store wether they have intrinsic dimensions

Display objects without intrinsic dimensions don't contribute to the parent's
height/width when set to `content`.
Implement height by content
Don't add children that are not in flow to the "groups"
Don't allow inner width/height less than 0
Fix to detect overlaps even if width or height is 0
Implement short layout code path, for when there is only 1 child
Fix issue that caused new elements to be created more than once

This was happening when the rule obtained via isA was being applied to multiple
elements