Optimize|Console: Annotating a list of terms for autocompletion popup

Reduced the number of times the known words are iterated
when composing the annotated list of possible completions.
Documentation|LogWidget|Client: Note about future refactoring
Homepage: Updated source download page for 1.11.1
Homepage|OS X: Updated minimum supported version to Snow Leopard
Optimize|Refactor|libgui|Font: Faster rich format subranges

Profiling showed that majority of the time used by FontLineWrapping
was spent splitting RichFormat instances into subranges. This commit
revises the implementation of RichFormat so that it is efficient
to refer to a subrange of a RichFormat -- no copying or modification
occurs.
Optimize|Client|FontLineWrapping: Better findMaxWrap; made thread-safe

FontLineWrapping now uses a findMaxWrap() method that relies on
advance widths of individual characters rather than recalculating
longer portions of text repeatedly. (Old algorithm #if 0'd.)

FontLineWrapping is also Lockable and locks itself automatically
when in use.
Fixed|Console: Bold style not undone in styled command printout
Client|UI|DocumentWidget: Prepare text as a background task, show indicator

FontLineWrapping is now run in a background task, unblocking the UI
while the document content is being prepared for drawing.

A progress indicator is shown in the widget while the background task
is running. (Currently in an 'indefinite' mode.)
libshell|AbstractLineEditor: Adjusted behavior of autocompletion

The first press of Tab only sends the autocompletion notification if
there is no unambiguous completion available. Further presses send
the notification and then on subsequent presses start cycling through
the possible completions.

The objective here is to avoid showing the autocompletion popup
unnecessarily/too early.
Fixed|FontLineWrapping: After wrapping, at least one blank line must exist

ILineWrapping is supposed to be empty only before nothing has been
wrapped. An empty text string is supposed to produce one blank line
of wrapped text.
libshell|AbstractLineEditor: Added word deletion

The same modifier that is used for word jumping can now be used
together with Backspace to delete the word behind the cursor.