Clang modernize loop convert

This monster is the result of running clang-modernize http://clang.llvm.org/extra/ModernizerUsage.html
on the codebase, specifically with this command.
```
for x in $(ls src/*.cpp); do clang-modernize -format -style=file -loop-convert $x -- -DLOCALIZE -Wall -Wextra -g --std=c++11 -MMD; done
```
In addition to a lot of the code being easier to read when using range operations, this makes swapping out underlying containers a lot easier, which is something that frequently makes performance improvements harder than they need to be.

If this develops a conflict that doesn't resolve trivially, just let me know, it's just a minute to redo the whole thing.