[tests] use generic picklability test
[test] move test form functions.py to function.py
[analyticalproblems] correct default arguments of InstationaryAdvectionProblem
[core.pickle] also pickle function dicts
[test] remove obsolete import
[parameters] add 'sid' property to ParameterType
[core] rename 'init_arguments' -> '_init_arguments'
[core] allow ' __init__' methods with varargs in BasicInterface subclasses
[core] add '_init_defaults' to BasicInterface
[core] include __init__ default arguments in sid calculation

This ensures passing an __init__ argument its default value does not
lead to a different sid compared to when the argument is not passed.
[tests] improve 'assert_is_equal' in pickling test
[core.pickle] fix dumps_function in case code object uses builtins
[analyticalproblems] pickle ThermalBlockProblem without dumping the diffusion functions
[parameters] prevent adding 'self' to closure of mapping in ExpressionParameterFunctional
[parameters] use 'dumps_function' when pickling GenericParameterFunctional
[parameters] allow pickling of ExpressionParameterFunctional without dumpig code objects
[tests] add test for analytical problems