Start of another major code cleanup and refactoring session.
Merge remote-tracking branch 'origin/master'