Pike 8.0: Unset variables are UNDEFINED.

Use object_variablep() to test whether a variable exists in an object
(that's what it's for...) instead of zero_type() to check if it doesn't.

Fixes issues with the config interface and Pike 8.0.
Pike 8.0: String.Buffer contains a sprintf().

PikeCompiler has inherited String.Buffer, so we need to make sure
not to call the inherited sprintf() when we want the global one.

Fixes "Bad argument 1 to add(). Expected string|String.Buffer.".
Pike 8.0: #if efun() is obsolete since 10 years back.

Reduce warnings from cpp().
Pike 8.0: Add support for some new SSL features.

* Filter suites based on key length and key exchange method.

* Reject clients with old versions of SSL/TLS.
Merge branch 'patches/pike8.0' into devel

* patches/pike8.0:
  Pike 8.0: Add support for some new SSL features.
  Pike 8.0: #if efun() is obsolete since 10 years back.
  Pike 8.0: String.Buffer contains a sprintf().
  Pike 8.0: Unset variables are UNDEFINED.