API: cache compiled rackcode expressions

This change increases performance on many sequential
calls to considerGivenConstraint with a constant filter expression.

compileExpression: new caching wrapper around spotPayload('SYNT_EXPR')
genericAssertion: use compileExpression instead of spotPayload
considerGivenConstraint: idem
scanRealmByText: idem
getNarrowObjectList: idem, moved into functions.php
considerConfiguredConstraint: use considerGivenConstraint
getCellFilter:
	use compileExpression instead of spotPayload
	invalid rackcode is not lost on submit, it is highlighted