Changing interfaces to allow passing functions instead of types.

It allows to provide own function.
Note: Running experiments with reports will require triples
[function, type_name, description] instead of simple function.
This is because reporting uses those extra bits to display from what call is result comming.

There is also named_functions.r file added in this commit providing some standard triples of
mentioned kind to simplify calls and allow to avoid copy&pase errors when function and it name is
typed separetly to runExperiment.

Note: There is >>de<< interface which does not require naming but does not generate report as well.