Total API Overhaul - changed all widgets over to "Builder Pattern" - Closes #112.

See #112 for the API discussion were this pattern was decided upon.
See the [all_widgets example](https://github.com/mitchmindtree/conrod/blob/master/examples/all_widgets/all_widgets.rs) to see the changes and how to use them.

There's still plenty that can be added and improved upon but this change will definitely help both ease of use and scalability of the widget system in the long run!

Next on the list will be moving more and more parameters into trait methods that can be implemented on widget contexts (i.e. `position`, `dimensions`, `point_radius`, `line_width`, `skew`, `font_size`).

Also need to fix the macros to handle widgets with type parameters so that it's easier to implement the traits.

We could also use nicer widget positioning methods (rather than writing the x, y co-ords every time) such as `.down(padding)`, `.right_from(ui_id, padding)`, etc which should be pretty easy.