Use Rio.getWriterFormatForMIMEType to use currently loaded registry

This ensures that third-party extensions are recognised automatically if
they can be loaded with ServiceLoader into the RDFWriterRegistry,
without having to add their formats statically using the outdated
RDFFormat.register method
Remove hardcoded formats in SparqlServiceImpl and add service factories

This makes it extensible at runtime using any and all available formats
and mime types. The special requirement for runtime binding of a
TemplatingService in the SPARQLResultsHTMLWriter is accommodated for
using a setting that is checked when the query is about to be processed.