Use pointer array to store signal_instance structs instead of linked list so that we can create persistent associations between user-specified instance ids and user_data context pointers. Keep array sorted and use bsearch to look up instances efficiently by id.
Added function prototype for msig_reserve_instance(); fixed arguments for instance id bsearch.
Fixed another pointer bug calling bsearch.
Merge branch 'master' into instances5
Call instance event handler (if defined) when scope or connection is removed.
Fix bugs in new msig_remove_instance() array realloc.
Remove old todo.
Properly free instance memory; removed unused variable.
Removed todo.
Add id and user_data arrays to arguments for msig_reserve_instances(); function now returns number of instances added. Remove default instance of recvsig and add specific ids in testinstance program.
Revise msig_remove_instance() and add to header file.
Add msig_remove_instance() to python bindings, use it in testinstance.py
Add msig_remove_instance() to java bindings.
Rewriting msig_get_instance_with_remote_ids() to support persistent local ids.
Use bsearch in msig_get/set_instance_data() functions.
Fix return type for instance bsearch.
Revised msig_get_instance_with_local_id() for persistent ids.
Refactoring instance id_map variable naming.
Merge branch 'master' into instances5
Merge branch 'master' into instances5