Add expression registration facility

* Add registration facility for custom AbstractExpressions
* Rework SpecialExpression to ExampleExpression
* Add example documentation