lightning uses onions! they don't make enough of that point nor do they really exploit it enough in their protocol design part of the reason why payments fail is because they are client side onions and a hop in the path is ded or unresponsive temporarily