allow construction of curvedsurfcaegrid with runtime lagrange order
Summary
Replace the compile-time order parameter by a run-time order parameter in the constructor of the CurvedSurfaceGrid
Details
Instead of parametrizing the grid by a template order parameter, the actual polynomial order is move to a constructor argument. This means, that it has to be passed down to the entity and geometry classes and the corresponding iterators.
In order to force the grid geometries to be parametrized with the given order, the CurvedSurfaceGrid is parametrized with a bool template argument useInterpolation. This is false by default. The class-template-argument-deduction can detect whether a constructor parameter for the order is given. In this case the useInterpolation is set to true, otherwise to false.