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.
Maybe like the following
```
switch (order)
case AssemblerLib::ComponentOrder::BY_COMPONENT:
{
   for (auto e = ms->elementsBegin(); 
  e != ms->elementsEnd(); ++e)
  {
     appendGlobalIndices<
     AssemblerLib::ComponentOrder::BY_COMPONENT>(
    mesh_id, **e);
  }
}
break;
case AssemblerLib::ComponentOrder::BY_LOCATION:
case AssemblerLib::ComponentOrder::BY_COMPONENT:
{
   for (auto e = ms->elementsBegin(); 
  e != ms->elementsEnd(); ++e)
  {
     appendGlobalIndices<
     AssemblerLib::ComponentOrder::BY_LOCATION>(
    mesh_id, **e);
  }
}
break;
default:
ERR("Unknown type of ComponentOrder passed.");
```