SourceFactory was meant to cache Sources so that they could be used in different preprocessor tasks. This turned out to be over-engineering. This patch kills the layer.