[Refactor] Whitespace / code style changes Initial

Used Uncrustify, and very carefully configured a set of changes.  It
affects whitespace only and thus can't break anything.
[Refactor] Remove extraneous semicolons

Code formatter exposed several unnecessary semicolons
[Refactor] Some manual cleanup, post-auto format

Redid some of the single line ifs that worked better before.  Got rid of
many single-line ifs.
[Refactor] Consistent if/else chains, no mixed braces
[Refactor] Reduce if/else nesting where possible

Also formatted empty constructor bodies to be on new lines.
[Refactor] For/foreach no mixing braceless with not
[Refactor] Missing include for debug builds
[Refactor] Misc cleanup