Improve type-erasure in DOCA
DOCA uses a variant
to support different types of base Algorithms, but it could profit from a more targeted type-erasure, as all that needs to be supported is obtaining a condition context, and access to the 'warning()stream -- and could thus avoid using
visit` to obtain those.