use mkdtemp() to create temporary directory rather than mktemp() followed by mkdir()

closes #3637
Merge branch 'master' into guns

* master:
  use mkdtemp() to create temporary directory rather than mktemp() followed by mkdir()
fix various compiler warnings; most were due to unchecked return values from system calls.
use gethostname() to determine the system host name

use getaddrinfo() to look up canonical DNS name, and fall back to hinting from /etc/resolv.conf

see #3298
Backed out changeset 1142ed8974fa
backout c1371176ea45
Don't exit pager if quit=ask is answered "no".

This patch addresses ticket 2788.

Currently if you quit ('Q') from inside the pager, with quit=ask-yes
or quit=ask-no, and you respond "no", mutt leaves you back in the index
menu.

This patch changes it so that mutt does not exit the pager.
Merge branch 'master' into guns

* master:
  Don't exit pager if quit=ask is answered "no".
  backout c1371176ea45
  Backed out changeset 1142ed8974fa
  use gethostname() to determine the system host name
  fix various compiler warnings; most were due to unchecked return values from system calls.