How can I align an empty's axes to a custom transform orientation?

So I have been using the transform orientation of a particular face to perform transformations on an object. I want to use an array to duplicate the object and rotate it around (like propeller or fan blades). I am using an empty object as the offset for the array.

The problem is that I want the empty’s axes to align perfectly with the transform orientation of the face I was using to create the fan blade, so that when I rotate the empty to offset the array, the fan blades will align perfectly to the transform orientation of the face.

Right now all I can do is assign the empty as the object offset for the array, rotate the empty along the z-axis to “fan” out the blades, then manually adjust the the rotation of the empty around the y-/x-axis so the blades approximately are aligned with the fan face.

Can anyone tell me how I can simply align the axes of the empty to the transform orientation of the face I was using to create the blade I want to duplicate? Then I can just rotate the empty around it’s local z-axis to “fan” out the blades and they will be perfectly aligned with the fan face and the rest of the fan.

Thank you.

Please supply a download link to a demo blend file and an image of what you want to achieve, then it makes clear what you want to do in your particular scenario

Ok I figured it out. Had to use an addon, Precise Align.

http://wiki.blender.org/index.php/Extensions:2.6/Py/Scripts/3D_interaction/Precise_Align

Worked perfectly.