new tab completion mode: cycle through matches

While Smuxi already supports two types of tab completion -- first match (irssi) and longest common prefix (bash) --, I have been missing a third: tab cycle.

On pressing Tab, this mode expands the first match. On pressing Tab again, the previously expanded first match is replaced by the second, and so on. Upon tabbing beyond the last match, it wraps around to the first match again.

This patch introduces such a mode. As my first contribution to Smuxi, I explicitly invite comments.

Also, it seems there is quite some code duplication between the Gnome and the SWF frontend regarding tab completion. Perhaps this should be factored out -- I can do this too, but I'd first like to discuss how.