Warnings and .gitignore

There shouldn't be any functional differences in the code diffs here, just warning fixes, mostly by cleaning up the XML comments.  The diffs look bigger than they really are because I reformatted a few sections that were using tabs.  With this applied, if you ignore warning 1591, you should get perfectly quiet builds.