Extract CustomElement class from Widget, for non-visual elements.
Remove destroyRendering() method from widget, and the preserveDom flag.
Remove Widget.toString().
Rename findWidgets() to findCustomElements().
Fix documentation errors and remove unused dependencies.
Update tests for CustomElement.