Str:words produced error if given string contains non-ascii whitespaces but no words.
More consistent handling of leading and trailing spaces in Str::words.

Result was right-trimmed but not left-trimmed, now it is trimmed only where necessary.
Cleaning up some code.