Adds Widget abstraction
Refactoring attributes out of AlloyWidget