widgets: Fix line endings, remove duplication, unused code paths, docbook

This PR fixes the line endings (which is why the actual PR diff is unreadable, read individual diffs).  Secondly, it removes duplication from the two widgets. Third, remove the unused individual widget updating. And fix a couple of docbook warnings. With all of this, core functionality should still be ~~broken~~ unchanged.

As usual, noob here. Please let me know if I did something that wasn't clean or is clearly AFU.

Thanks!