Refactor dof table construction

Mainly moving createDofTable() function into LocalToGlobalIndexMap constructor.
This removes duplicate code from the GroundwaterFlowProcess and the SteadyDiffusion2D test.

Other important changes are of technical nature:
 - Iterator access for mesh's elements
 - Disable implementation of LocalToGlobalIndexMap for parallel environments. This was not implemented or tested anyway.
The `size()` returns number of elements in all mesh subsets (essentially equal to number of mesh elements). The `dofSize()` the number of dof which is (number of nodes)*(number of components).
The `size()` is actually unused; removing.