This patch removes support, on Linux, for using the malloc_usable_size
introspection method when instantiating CoreFoundation runtime
instances.

On Linux, across various architectures and versions of the GNU C
Library, malloc_usable_size has been observed to at times return
incorrect values. Since the introspection value-add it provides to
CoreFoundation seems to be of limited utility in this context, we
eliminate it and simpy use the caller-requested size. In addition,
memsetting this small tail block has also been found to cause heap
consistency problems.
