Implemented macro for widget module boilerplate and started on number_dialer module (still WIP)

The number_dialer widget is still a WIP but doesn't break anything in any way in the mean time - I'll finish it off tomorrow :+1:

Oh and I also changed the name of the closure argument for each of the widgets from `event` to `callback` as it represents its usage a little more clearly.