To suppress Valgrind warnings, opal_tsd_keys_destruct() needs to explicitly
release TSD values of the main thread. However, they were not freed if keys are
created by non-main threads. This patch fixes it.
This patch also optimizes allocation of opal_tsd_key_values by doubling its size
when count >= length instead of increasing the size by one.
Signed-off-by: Shintaro Iwasaki <siwasaki@anl.gov>