http://ridiculousfish.com/blog/posts/array.html
It doesn't go into implementation details like the OP, but explains some of the thinking behind these class clusters.