key.cpp: fail with a friendlier message on missing ssl EC support

Previously if bitcoind is linked with an OpenSSL which is compiled
without EC support, this is seen as an assertion failure "pKey !=
NULL" at key.cpp:134. It is an esoteric piece of knowledge to
interpret this as "oops, I linked with the wrong OpenSSL".

The new output is

  Fatal error: OpenSSL appears to lack support for curve secp256k1.
  bitcoind: key.cpp:136: {anonymous}::CECKey::CECKey(): Assertion `0'
  failed.

The reason for using assert(0) rather than exit(EXIT_FAILURE) or
something is that a clean shutdown calls the destructor for
CCheckQueue, which is not fully initialized, causing a messy boost
assertion failure to fire. This way at least the assertation
failure happens close to the actual failure.