Improve Tmux startup logic.

Instead of creating a Tmux session, and then moving to the background session,
just create the background session if needed, and always attach to it.

This fixes the need for setting destroy-session on, and thus enables the use
of multiple background sessions.
Improve GPG agent startup.

Use the value of $GNUPGHOME, to facilitate moving GPG's home.

Also clean up the launching function's arguments.
Merge branch 'tmux-improvements'

* tmux-improvements:
  Improve Tmux startup logic.