Changing the order of the statements
The best way to really 'break' the iteration
Removing unecessary lower_ix and higher_ix

Taking a close look at the algorithm we can see that
word_ix is always related to lower_ix and higher_ix
rendering them unecessary.
Remove unecessary iterations at the while loop

Looking at it I see that even after the array is sorted
the while loop keeps (unecessarily) iterating array.length times

What I think the algorithm was trying to do is to...
1) Repeat if it was "broken" with a break
2) Go out if it iterate through everything without breaking
  - in this case there's a 'more' variable modification that
  doesn't happen if the iteration is broken (by a break)
  So this 'more' var modification acts as indicator that the iteration
  went till the end without breaking. Is it right?
Remove unecessary assignment and conditional with :reset and nil

I think all the harassment of setting prev_word and next_word to nil
or to :reset is related with trying to iterate from 0 indexed.

I think we can just jump and get the first 2 elements and compare them.

words[word_ix] is the first
words[word_ix+1] is the second

And at iteration they guard/maintain this relation.
Remove unecessary 'if'

Now that we are not relying on nil of :reset values of next_word
This 'if' doesn't make any difference.
Just fix the identation

I think this was the last step that we can take
without radically modifying the way the algorithm was trying to
do for sorting.

Next commits we are implementing some changes at the algorithm.
Remove break

We really don't need to break.
We can just go on the iteration and keep on swaping
the words till the end of the array.

Then come back and do it again and again till
we pass it without swapping any.

This is the bubble way of doing it.
We just have to have a way of signaling that
we passed the iteration without making any swaps.
We do this by setting more to -1 everytime we swap some word.
At the end we do more += 1. If more begins with -1 it will turn
to 0 and we go on iterating. If it's 0 already, it'll turn to 1
and we can stop as the array is sorted.
Rephrase the 'more' thing without using numbers
Invert the while conditional order

This way we can get rid of setting more=true before the while
Change 'more' to 'swapped': makes intentions clearer
Use parallel assignment for swapping words

Parallel assignment of the type a,b=b,a make easier
for us to get rid of the prev_word and next_word assignments.
Just for fun change the iteration [0..size-2] to [1..size-1]

Oh my gosh...
Look at this http://en.wikipedia.org/wiki/Bubble_sort#Pseudocode_implementation
Now our code evoluted into some know lifecodeform called bubble sort.
Our folks are telling us that our code decends directly from the
root pseudocode of the specie! ;-)