Improve xtermtitle plugin

"title" may be missing from the story content if the item hasn't been
filled in yet (between ITEM and ATTRIBUTE responses), so default back
to a plain string instead of throwing a nasty (but non-fatal) exception.
Make aliases registerable

- Cleanup some of the unregister logic while we're at it, and move
  some functions to group them with logical counterparts.

- Aliases are almost all done from guibase, which probably isn't the
  right thing to do for all of these remote commands, but considering
they'll work even if there's no taglist / story / reader objects, I'm
okay with it for now. This is mostly geared at making aliases
registerable from plugins.