This should conclude my work on tickets fixes[t:520] and fixes[t:576]. All widgets should now take all configurable properties in their constructor. All clients should used named parameters when passing in values to the constructor.

I have added a "comment" attribute to all widgets. This should allow clients to easily store a bit of extra information about a widget for their own use.

I also changed Slider and PercentageBar? to conform to the pychan standard. To get and set values to them you can use their "value" property. I had to change some code in the PychanDemo? so chances are if you are using these widgets you'll need to do the same.

Fixed the editor and all demo's to work with these changes. Hopefully I got everything.

Some notes to clients: This commit MAY change some functionality of pychan depending on how you are using it. Any parameters passed to the constructors will override any attributes set in the style even if you specify a style in the constructor. Keep this in mind! Other than that it should be exactly the same.