a new instance of a <code>ExpressionFactory</code>, with optional properties.

 <p>
 This method uses the same lookup procedure as the one used in <code>newInstance()</code>.

 <p>
 If the argument <code>properties</code> is not null, and if the implementation contains a constructor with a single
 parameter of type <code>java.util.Properties</code>, then the constructor is used to create the instance.

 <p>
 Properties are optional and can be ignored by an implementation.

 <p>
 The name of a property shoul