feat(kernel/type_checker): add mk_app_justification auxiliary function

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/coercion): add has_coercions_to function

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(frontends/lean/elaborator): add 'delayed coercions', add example demonstrating why the new feature is useful

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(util/lazy_list): add is_nil predicate

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/unifier): do not create a case-split for choice constraints that produce only one alternative

Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
feat(library/unifier): do not create a case-split for choice constraints that produce only one alternative