Fixes some 1000+ code style and performance warnings.
The drawback is that it pollutes the 'git annotate' views.
All changes:
Replaced all null pointer constants with C++11 'nullptr' keyword
Use the 'auto' specifier for variable declaration
Replace 'virtual' by 'override' keyword
Replace default constructor/destructor bodies with 'default' keyword
Replace old-style for loops by range-based loops
Use const reference as parameter and std::move() if possible
Replace static by dynamic casts for downcasts
Use const reference instead of copy initialization where possible
Use const reference for loop variables where possible
Remove redundant member initializations in constructors