Brought over the one-off Scale9Image from Feathers.
This is needed for Scale9Image
Initial setup.

This is going to need a rename. I still want to avoid making this a big fancy UI toolkit, but the
direction I'm taking that in is "general layout" instead of "general bag of widgets".

I'm also screaming "oh god oh god why" in my head constantly as I write this code. This is probably
my worst idea of the last 6 months.