A constructor resolver attempts to locate a constructor and returns a ConstructorExecutor
that can be used to invoke that constructor. The ConstructorExecutor will be cached but
if it 'goes stale' the resolvers will be called again.
Within the supplied context determine a suitable constructor on the supplied type
that can handle the specified arguments. Return a ConstructorExecutor that can be
used to invoke that constructor (or null if no constructor could be found).
context - the current evaluation context
typeName - the type upon which to look for the constructor
argumentTypes - the arguments that the constructor must be able to handle
a ConstructorExecutor that can invoke the constructor, or null if non found