Since we may not always have enough capcity to store regular parser output and parsoid output on the same ParserCache backend, we need ParserOutputAccess to have the ability to use a different ParserCache instance of parsoid output. Such a different instance already exists, it is currently used by ''Parsoid''OutputAccess.
Implementation draft: instead of injecting a ParserCache instance into ParserOutoutAccess, inject a ParserCacheFactory. ParserOutoutAccess can then detect whether we will be using parsoid (see T300190), and select the appropriate ParserCache instance accordingly.