[analyticalproblems] allow to specify a parameter space for EllipticProblem
[operators.cg] change convention for Neumann boundary values
[operators.cg] add InterpolationOperator
[discretizers] fix discretize_elliptic_cg in case no functionals are given
[playground] add BitmapFunction
[functions] add 'pi' and 'e' to ExpressionFunction
[parameters] add 'pi' and 'e' to ExpressionParameterFunctional
[discretizers] make h1 product h1_semi + l2
[la] improve checks for small and linearly dependent vectors in gram_schmidt
[operators] remember assembled non-parametric LincombOperators
[operators] remove lincomb function

The only purpose of lincomb was to automatically assemble non-parametric
LincombOperators. However, this can easily break caching. (As an
example, the full H1-product operator in discretizers.elliptic
is the sum of two non-parametric operators, and would thus get assembled
to a NumpyMatrixOperator.)
[operators] more optimization of LincombOperator in non-parametric case