Made the widget framework handle widget dependencies and conflicting keys. Yay.