BUG-1281: cache TransformerFactory and Transformer

The code used to instantiate a TransformerFactory for each individual
request, where a single factory can be shared between threads as long as
it is not reconfigured.

As a futher optimization, we also create a thread-local cache for
transformers, as they can be use for multiple transformations.

Change-Id: I836148208be62f66cb6b509b0746e9fb92a569f0
Signed-off-by: Robert Varga <rovarga@cisco.com>