[sgen] Improve describe_ptr().

Don’t try to print the vtable if the major allocator knows it’s invalid.
Print bridge information.
[sgen] Implement our own qsort() so as not do deadlock.

qsort() may call malloc(), which can lead to a deadlock when the
world is stopped.

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=16432.