Created by: zhaoqin
Fixed several bugs in delayed client sideline threads exit.
- add fragment_exit_post_sideline to delete shared_cache_flush_lock after instrument_exit,
- add dynamo_exited_all_other_threads reset for reattchment,
- initialize dcontext->client_data->suspendable to be true,
- add flag threads_are_stale in synch_with_all_threads to enforce loop and avoid stale pointer in threads,
- skip synching client sideline threads in detach_on_permanent_stack during detachment,
- skip terminating client sideline threads in detach_on_permanent_stack,
- add test for static detach/attach with client sideline threads,
- use app tls gdb index for apps that are statically linked with DR.