Always OBJ_DESTRUCT the send request.
pmix: fix a return status in native_get_attr
Checkpoint current work. I have eliminated opal_identifier_t and replaced it with opal_process_name_t, and begun the process of getting the opal layer to compile again. Current error list:

base/dstore_base_stubs.c: In function 'opal_dstore_base_lookup_proc':
base/dstore_base_stubs.c:202:5: warning: passing argument 2 of 'opal_hash_table_get_value_uint64' makes integer from pointer without a cast [enabled by default]
     opal_hash_table_get_value_uint64(jtable, id, (void**)&proc_data);
     ^
In file included from ../../../opal/mca/dstore/base/base.h:23:0,
                 from base/dstore_base_stubs.c:22:
../../../opal/class/opal_hash_table.h:159:19: note: expected 'uint64_t' but argument is of type 'struct opal_process_name_t *'
 OPAL_DECLSPEC int opal_hash_table_get_value_uint64(opal_hash_table_t *table, uint64_t key,
                   ^
base/dstore_base_stubs.c:210:9: warning: passing argument 2 of 'opal_hash_table_set_value_uint64' makes integer from pointer without a cast [enabled by default]
         opal_hash_table_set_value_uint64(jtable, id, proc_data);
         ^
In file included from ../../../opal/mca/dstore/base/base.h:23:0,
                 from base/dstore_base_stubs.c:22:
../../../opal/class/opal_hash_table.h:172:19: note: expected 'uint64_t' but argument is of type 'struct opal_process_name_t *'
 OPAL_DECLSPEC int opal_hash_table_set_value_uint64(opal_hash_table_t *table, uint64_t key, void* value);
                   ^
base/pmix_base_fns.c: In function 'opal_pmix_base_cache_keys_locally':
base/pmix_base_fns.c:288:5: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'opal_process_name_t' [-Wformat=]
     OPAL_OUTPUT_VERBOSE((1, opal_pmix_base_framework.framework_output,
     ^
base/pmix_base_fns.c: In function 'setup_key':
base/pmix_base_fns.c:403:41: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'opal_process_name_t' [-Wformat=]
                                         *name, key)) {
                                         ^
In file included from ../../../opal/mca/sec/base/base.h:23:0,
                 from base/sec_base_frame.c:19:
../../../opal/mca/sec/sec.h:77:54: error: unknown type name 'opal_process_name_t'
                                                      opal_process_name_t *my_id,
                                                      ^
In file included from ../../../opal/mca/sec/base/base.h:23:0,
                 from base/sec_base_select.c:20:
../../../opal/mca/sec/sec.h:77:54: error: unknown type name 'opal_process_name_t'
                                                      opal_process_name_t *my_id,
                                                      ^
../../../opal/mca/sec/sec.h:96:5: error: unknown type name 'opal_sec_base_module_get_my_cred_fn_t'
     opal_sec_base_module_get_my_cred_fn_t   get_my_credential;
     ^
../../../opal/mca/sec/sec.h:96:5: error: unknown type name 'opal_sec_base_module_get_my_cred_fn_t'
     opal_sec_base_module_get_my_cred_fn_t   get_my_credential;
Checkpoint - did the DSS and am now working my way thru ORTE
fix opal/orte/ompi/oshmem layers so the code can compile and run

fix (for now) ompi/proc/proc.c so the modex works in heterogeneous mode

dstore hash was not yet revamped, we are still using uint64 keys via the
uint64_t hash_name(opal_process_name_t) helper function
silence warnings
i created new class opal_proc_table_t which is based on opal_hash_table_t
and takes a key of type opal_process_name_t
internally, it uses two levels of opal_hash_table_t :
opal_proc_table_t->super = hash table for jobids
and in this hash table, there are opal_hash_table_t for all the vpids within the same jobid

this is currently used in opal/mca/dstore
and the next step is to use it in the btl

if we decide to have a separate hash table for the vpids of the local jobid,
then this implementation could be hidden in opal/class/opal_hash_table.c

i could only run minimal tests on this commit
Fix merge conflict
Provide the mirror macro for send/recv of values and use it to replace the hardcoding in ompi/proc
Merge remote-tracking branch 'origin'