Write a program which, given a list of words, a starting word and and ending word, yields the shortest word ladder from starting word to ending word, where two adjacent words in the list differ only by one letter.
Examples :
from DOG to CAT : [DOG,DOT,COT,CAT]
from WARM to COLD : [WARM, WARD, CARD, CORD, COLD]