Rearrange structures to reduce padding
Get rid of atavistic FEMFunctionBase member
Initialize more variables in constructors

This is the "watered down" version of ab47188e, with only those
initializations that should improve correctness, efficiency, and/or
ease of debugging.  Initializations that should merely make -Weffc++
whine less are now limited to the weffcpp_fixes branch.
first_solve is UnsteadySolver-only

Looks like I missed the copy in the base class when refactoring
Don't start with undefined iteration counts
Rearrange Elem members to reduce struct padding

On 64-bit machines when configuring with 32-bit subdomain ids this
ought to save us 8 bytes per Elem.
Reorder DofObject id and unique_id

In the most common case (unique id 8 bytes, id 4 bytes, processor id 4
bytes) this should save us 8 bytes of padding per DofObject
Tell -Wconversion we really want to downconvert
Fix -Wshadow warning
Remove redundant declaration
Typo fix for new initializer
Use cast_int where appropriate
Fix -Wshadow warning
Use cast_int when shrinking size_t to uint
Remove duplicate definition
Return the right type from vectormap::count()
Use libmesh_dbg_var() where appropriate
Avoid conversion warnings
Avoid conversion warnings
Fix conversion, missing-default, undefined param

More warnings fixes