Introduce new expression system.

ExpressionTableScan is responsible for handing the parameters
and tables to the Expression. Similar to other table scans, but
with less functionality.

ExpressionLibrary is a singleton which keeps track of all
available expressions and works as a dispatcher.

Expression is the base class for all further expressions