More GUI Progress - TODO:
> memory should only be managed by context
> have a std::vector of children both in context and widgets, that sort on child addition
Merge
Merge
merge