Full UI Button support in canvas

- Added full support for Button’s in canvas
  - Button.clicked function
  - Button.hover (state, you can specify changes when in this state)
-  revamped & reorganized some functions