Introduce ExpressionFunctionInterface

to extend the ExpressionLanguage with custom functions.

* Add 'link' function that relies on the LinkHelper class
* Add tests

Should fix #83