Clean up use of SSL_*_app_data functions

Commit 49de5431d53b made Tor use SSL_set_app_data and SSL_get_app_data instead of its previous hash table to look up the tor_tls_t * object corresponding to an SSL * object. Unfortunately:

  • The patch left in two hash-table helper functions that it made unused. Reported by mobmix.
  • The patch did not check the result of SSL_set_app_data for errors. Reported by piebeer.
  • The SSL_*_app_data functions are actually macros wrapping corresponding SSL_*_ex_data functions in such a way that a program that tries to use the app_data and ex_data functions at the same time will break horribly.