Scripting: Add script engine for lucene expressions

Adds support for new "expression" script engine.

This is backed by lucene expressions.  These are javascript expressions, which can only access numeric fielddata, parameters, and _score.  They can only be used for searches (not document updates).

closes #6818
What could the user do about it? If this isn't an AtomicNumericFieldData, then the class is being used incorrectly, and it is an internal error.  Since it is package private, it should only be used where it is meant to be used.