Consensual languages and matching finite-state computations