First of all, a formal "Thank you very much for this incredible engine"!!!!

I was using ODE earlier, and now moved into bullet, and i must say that this engine is far superior/cleaner and easier to use! There is a lot more flexibility available and excellent support for collision detection, which makes bullet a god send!
Now to my question on contacts management -
Wouldnt it be easier if every body object maintained an array of current contacts its making with other bodies? Basic info such as number of contacts, contact locations & normals, penetration depth/force magnitude during impact should be great and handy. I'm sure the core engine is already calculating these, its just a matter of exposing these results to the end user to make it possible to do a lot more with less coding.
Of course, the alternate approach is to create a callback and tap the results from there, but i feel this is extra work for no reason and besides this info will be useful to everyone! For example, for using this to play sounds when objects collide etc.
Thanks a lot for your patience, and for the wonderful engine!!!
San