I use a verlet hybrid for both of the below. As you can see, with a bit of effort - it works just fine with rigid bodies. I only use 4 iterations of the contraint relaxation routines and it's very stable.
http://www.blitzbasic.co.nz/Community/posts.php?topic=80032
http://www.blitzbasic.co.nz/Community/posts.php?topic=71891#804067
http://www.blitzbasic.co.nz/Community/posts.php?topic=80032
http://www.blitzbasic.co.nz/Community/posts.php?topic=71891#804067