feat(frontends/lean): add 'obtains' expression

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
fix(frontends/lean): name of auxiliary hypothesis in 'obtains' expression, and also marked them as non-contextual

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/unifier): handle 'first-order' flex-flex constraints

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>