Mostly revert the prof_realloc() changes in
498856f44a30b31fe713a18eb2fc7c6ecf3a9f63 (Move slabs out of chunks.) so
that prof_free_sampled_object() is called when appropriate. Leave the
prof_tctx_[re]set() optimization in place, but add an assertion to
verify that all eight cases are correctly handled. Add a comment to
make clear the code ordering, so that the regression originally fixed by
ea8d97b8978a0c0423f0ed64332463a25b787c3d (Fix
prof_{malloc,free}_sample_object() call order in prof_realloc().) is not
repeated.
This resolves#499.