Allow multiple saxon processors to be used

XProcRuntime can only be configured with a single set of resolvers and listeners, requiring multiple instances to be used in complex server environments.

Due to the tight relationship between XProcRuntime and the saxon Processor, is not always possible to use the same saxon Processor for all operations in the JVM.

This patch allows multiple saxon processors and therefore multiple XProcRuntimes with the TypeUtils class.