Word truncation

Patched the truncate strings method to include truncation by word

Examples: 

    'Once upon a time'.truncate(4, word: true)
    => "Once upon a time"

    'Once upon a time in a world far far away'.truncate(4, word: true)
    => "Once upon a time..."

    'Once<br>upon<br>a<br>time<br>in<br>a<br>world'.truncate(5, word: true, separator: '<br>')
     => "Once<br>upon<br>a<br>time<br>in..."

    'Once<br>upon<br>a<br>time<br>in<br>a<br>world'.truncate(5, word: true, separator: '<br>', omission: '[...]')
     => "Once<br>upon<br>a<br>time<br>in[...]"