quoth a post [of mine] on another thread:
There is a manual way to make alpha faces render in the correct order in a single object, but it can be painful.
Theory:
transluscent faces (alpha faces) must be rendered in the order oppsite distance from the viewer (furthest to nearest) so that they appear to overlap correctly.
Taking advantage of the fact that faces can be made rendered from only one side (by default they are), and order sometimes can be determined that will result in a correct appearance from all sides.
to make the faces in an object render in this order the object must be split up into parts (what the parts consist of depends on the object. Some examples: top and bottom of each set of leaves in a tree [see images], or inside and outside of a sphere), and re-joined in order. I think that order is the order the objects should be drawn. (If not it is the opposite)
having faces set to will cause this technique to not work. If a face needs to be visible from both sides, it [probably] needs to be two faces.
I was working on a script for this (today), but I don't know when it will be completed.
With that said, an example of good and bad:
good

and bad
---------------update---------
I also noticed that you can sort the faces of an object in the z direction with [ctrl]+[f] out of edit mode.