New Uize.Test subclasses + Uize.Comm updates + other goodies

This pull request is highlighted by new `Uize.Test` subclasses aimed at providing helper methods for testing `Uize.Class` subclasses, `Uize.Widget` subclasses, and widget bindings.

There are also improvements to `Uize.Comm` and `Uize.Comm.Ajax` for error handling. The AJAX object would die before if an error occurred.

There are other miscellaneous fixes outlined in the commit logs.
So this fixes a looooooong standing bug with draggable collection items. Basically clicking on the collection item _sometimes_ would initiate a drag, which steals the click event and as such what you were actually trying to click wouldn't receive the event and nothing would happen.  Actually you would visibly see the collection trying to drag and then not.