Instead of asserting if we hit negative content sizes, warn and continue. This is easier to work with in this transition period.
A gadget is halfway between a widget and a CSS node. It's supposed to provide the minimum convenicence around CSS nodes until we've figured out how to integrate them with widgets.