[ML] Const iterator access to mesh's elements.
[ML] Add elments iterator to MeshSubset.
[ML] Add mesh subsets iterator in MeshSubsets.
[AL] Temporarily disable constructor for rows != colmuns.

This is used for parallel meshes and has to be implemented later.
Now it's not even tested.

In LocalToGlobalIndexMap save a copy of _rows.
And the _columns are the same as _rows being a reference.
[PL] Move createDofMap to AssemblerLib.
[AL] Store mesh component map and subsets locally.

GW: Update construction of local_to_global_map.
[AL] Pass only size to createVector/Matrix.

In the vector matrix builder only size is used.
[AL] Add LocalToGlobalIndexMap::dofSize().
[PL] GW: Change comments on mesh subsets creation.
[T] Save local_to_global_map.

Otherwise there is a reference to temporary.
[T] Update AssemblerLib tests for new LocalToGlobalMap.
[ML] MeshComponentMap: Remove unused include.
[AL] Extract private appendGlobalIndices().
[AL] Move vector reservation before for-loop.
[AL] Move implementation details into -impl.h/.cpp files.
[AL] Improve documentation.
Revert "[ML] Const iterator access to mesh's elements."

This reverts commit 10f6593f5bdb13442ec8fff60b712de68777fa0a.
[ML] Use getElements() to access mesh's iterators.
[AL] Move switch-case into element loop.

This results in fastest (in number of read instructions) code.
Add missing include.