Faits: A. La société X._ SA (ci-après: la Société), dont le but est l'exécution de tous mandats dans les limites de l'activité fiduciaire, est issue de la reprise des actifs et passifs le 23 décembre 1986 par la Société Fiduciaire Y._ SA (ci-après: Y._ SA), créée en 1962 à Lausanne, de la société Z._ SA (ci-après: Z._ SA), à Genève. Elle est dotée d'un capital-actions de 400'000 fr. réparti en 1600 actions d'une valeur de 250 fr. chacune. Lors de la fusion, A._ en détenait dix; sa participation s'est ensuite réduite à deux actions. B._, directeur de la Société, en détenait alors 364, représentant 13,38% du capital, puis 214 dès 1990. En 1976, Y._ SA avait créé le Fonds de prévoyance en faveur des collaborateurs de la Fiduciaire Y._ SA (ci-après: la Fondation Y._) et Z._ SA la Fondation de prévoyance en faveur des collaborateurs de la société Z._ SA Genève (ci-après: la Fondation Z._). Conformément à leurs statuts, le but de ces fondations était de venir en aide au personnel de la fondatrice notamment en cas de vieillesse, maladie, invalidité et accident par la conclusion d'assurances appropriées et l'attribution de prestations décidées librement et exclusivement par le conseil de fondation. B. Dès la fondation de Y._ SA en novembre 1962, A._, né le 1er janvier 1917, a occupé successivement la fonction de directeur adjoint puis de directeur et de "secrétaire hors conseil". Il a également occupé le poste de membre du conseil d'administration dès la création de Z._ SA et en plus, depuis 1975, celui de directeur général de celle-ci. Par avenants des 2 et 7 février 1977, le contrat de travail entre Y._ SA et A._ a été modifié, son taux d'activité a été réduit de moitié et sa rémunération mensuelle nouvellement fixée à 3'500 fr. Aux termes du nouveau contrat, A._ était autorisé à faire valoir son droit à la retraite dès le 1er janvier 1982, une rente mensuelle de 900 fr. indexée à l'indice des prix à la consommation lui étant versée dès sa retraite par la Fondation Y._. Y._ SA s'engageait à fournir mensuellement les fonds exigés par cette rente. Le contrat précisait que cette condition tenait compte du fait qu'A._ ne bénéficierait guère ou pas du second pilier. Parallèlement, aux mêmes dates, Z._ SA et A._ ont signé un contrat rappelant que ce dernier avait été à l'origine de la création de Z._ SA, dont il avait été membre du conseil d'administration depuis sa fondation et qu'il avait occupé le poste de directeur général depuis 1975 sans recevoir de rémunération autre que celle allouée par Y._ SA. Les termes du contrat précisaient que A._ réduisait son activité auprès de Y._ SA pour se consacrer à Z._ SA et fixaient son salaire mensuel à 1'000 fr. auquel s'ajoutaient annuellement 4'000 fr. de frais de représentation et de transport ainsi que 4'000 fr. d'honoraires d'administrateur. A._ était en outre autorisé à faire valoir son droit à la retraite dès le 1er janvier 1982, une rente mensuelle de 650 fr. indexée à l'indice des prix à la consommation lui étant versée dès sa retraite par la Fondation Z._ ou par une assurance. A._ a pris sa retraite en mai 1982. De 1989 à 1992, il a reçu à ce titre deux rentes versées par le Fonds Z._ et par X._ SA par l'intermédiaire de la Fondation Y._ qui représentaient au total 25'098 fr. (recte: 25'818 fr.), 27'118 fr., 28'574 fr. et 30'095 fr. C. Au moment de la fusion en 1986, X._ SA a conservé la structure du plan de prévoyance mise en place par les sociétés Y._ SA et Z._ SA. Les Fondations Y._ et Z._ ainsi que leurs buts et leurs modes de financement ont été maintenus. Leurs noms ont été modifiés en "Fondation de prévoyance en faveur des collaborateurs de X._ SA" respectivement, "siège Lausanne" et "siège Genève" (ci-après encore citées: la Fondation Y._ et la Fondation Z._). Modifiés le 30 janvier 1987, les statuts de la Fondation Y._ précisaient en outre que la fondation remplit son but de prévoyance notamment par la conclusion d'assurances soumises à un règlement de fondation et par l'ouverture au nom de la fondation de "livrets d'épargne prévoyance" auprès d'un établissement bancaire au bénéfice de collaborateurs désignés par le conseil de fondation. La même année, un fonds de réserve pour contributions futures a été créé au sein de la Fondation Y._. Il était alimenté par les attributions bénévoles de l'entreprise à la fondation (art. 5 des statuts). En sus des contributions réglementaires, X._ SA a alimenté le fonds de réserve de la Fondation Y._ par des versements bénévoles notamment pour les années 1989 à 1992 de 73'860 fr., de 74'556 fr., de 90'336 fr. et de 91'140 fr. Les mesures de prévoyance appliquées dans la société X._ SA étaient les suivantes: a) En 1985, avant leur fusion, Y._ SA et Z._ SA avaient chacune signé un contrat d'affiliation valable dès le 1er janvier 1985 auprès de la Fondation collective LPP de l'Assurance G._ dont les règlements prévoyaient pour l'ensemble de leur personnel des prestations ainsi qu'un financement conformes au minimum légal de la loi fédérale du 25 juin 1982 sur la prévoyance professionnelle vieillesse, survivants et invalidité (LPP; RS 831.40). Ces contrats ont été repris par la Société dont tous les employés sont assurés auprès de la Fondation collective. b) En septembre 1986, la Fondation Y._ a conclu un contrat d'assurance surobligatoire (n° xxx) auprès de l'Assurance G._. A la même date, le règlement de l'assurance surobligatoire de la Fondation Y._ a été modifié avec effet au 1er janvier 1985. Aux termes de son art. 6 al. 1, tous les travailleurs faisant partie du personnel cadre, dont l'engagement est définitif et n'est pas résilié, s'ils ont accompli trois ans de service et atteint l'âge de 30 ans sans avoir dépassé l'âge de 60 ans pour les hommes respectivement 57 ans pour les femmes, sont admis dans l'assurance, un travailleur pouvant être admis dès son engagement dans des cas particuliers (charges de familles ou libre passage). Le montant du capital mixte est fonction de l'âge de l'assuré et de son salaire. Il est versé à l'âge de la retraite ou en cas de décès prématuré intégralement au conjoint, aux enfants ou aux personnes à charge. En cas d'invalidité, une rente de 25% du traitement de base est versée. Le financement est assuré par des cotisations de 3% du traitement de base, qui correspond au "salaire annuel communiqué à l'Assurance G._", payées par moitié par l'assuré et la Fondation Y._ jusqu'à 44 ans pour les hommes et jusqu'à 41 ans pour les femmes, puis à raison de 0,75% par l'assuré et 2,25% par la Fondation et enfin uniquement par la Fondation dès l'âge de 55 ans pour les hommes et de 52 ans pour les femmes. La Fondation Z._ a procédé de la même manière. c) Durant la même année, la Fondation Y._ a également ouvert des "livrets d'épargne prévoyance" auprès de la Banque F._ au bénéfice des personnes nommément désignées par son conseil. D. Au cours de sa séance du 11 décembre 1986, puis chaque année jusqu'en 1993, le conseil de la Fondation Y._ a décidé le versement d'attributions bénévoles sur les "livrets d'épargne prévoyance" à son nom auprès de la Banque F._. Elle a notamment versé les sommes de 100'000 fr. en 1986, de 125'000 fr. prélevés sur l'exercice 1988, de 60'000 fr. prélevés sur l'exercice 1989, de 58'000 fr. sur l'exercice 1990, de 75'000 fr. sur l'exercice 1991 et de 80'000 fr. sur l'exercice 1992. Les montants des années 1989 à 1992 ont été répartis entre les assurés de la fondation, au nombre de cinq la première année, puis de sept les années suivantes, selon une clé de répartition tenant compte "de l'importance des valeurs mathématiques des polices conclues par la fondation et des années de services". Le livret d'épargne prévoyance de B._, né en 1928, a ainsi été crédité de 37'500 fr. en 1989, de 35'700 fr. en 1990, de 46'000 fr. en 1991 et de 48'500 fr. en 1992. Au cours de la séance du 11 décembre 1986, le conseil de la Fondation X._ siège Lausanne a constaté que, si les attributions bénévoles à l'ancien directeur A._ avaient été effectuées selon le même critère de répartition, un montant complémentaire de 11'425 fr. correspondant à une rente mensuelle de 948 fr. devrait lui être versé. Il a alors été décidé que la rente payée par Y._ serait augmentée de ce montant dès le 1er janvier 1987. E. A l'occasion d'un contrôle fiscal de la Société en octobre 1995 portant sur les périodes fiscales 1987/1988 à 1993/1994, l'Administration cantonale des impôts du canton de Vaud (ci-après: l'Administration cantonale des impôts) a procédé à des reprises sur des frais forfaitaires non admis et des primes d'assurances-maladie versées en faveur de l'administrateur et actionnaire B._, sur les rentes versées à A._ par le siège de Lausanne et la succursale de Genève pour les exercices comptables 1989 à 1992 ainsi que sur la moitié des attributions au fonds de prévoyance en faveur de B._ pendant la même période. Elle a estimé que l'ancien directeur A._ était avantagé par rapport aux autres employés qui n'ont pas bénéficié de la même prestation et que le critère de répartition des attributions aux livrets d'épargne prévoyance arrêté par la Fondation X._ siège Lausanne avantageait B._. Par décisions notifiées à X._ SA les 20 décembre 1996 et 23 janvier 1997, l'Administration cantonale des impôts a arrêté les rappels d'impôts et les amendes pour les périodes fiscales 1987/1988 et 1989/1990 et procédé aux taxations définitives des périodes fiscales 1991/1992 et 1993/1994. En matière d'impôts cantonal et communal, elle a réclamé un montant total de 104'892 fr. 15. En matière d'impôt fédéral direct, elle a réclamé un montant de fr. 43'033 fr. 60 pour les périodes fiscales 1991/1992 et 1993/1994. Par décision du 31 juillet 1997, l'Administration cantonale a rejeté les réclamations de la Société contre les décisions de taxation pour l'impôt fédéral direct et les impôts cantonal et communal, dont les conclusions étaient limitées à l'annulation des reprises concernant les montants versés à A._ et B._. F. Le 16 décembre 2004, le Tribunal administratif du canton de Vaud (ci-après: le Tribunal administratif) a admis le recours déposé par X._ SA contre la décision sur réclamation du 31 juillet 1997 de l'Administration cantonale des impôts. Il a considéré en substance qu'A._ avait été à l'origine de la création des sociétés Y._ SA et Z._ SA et de l'important développement dont elles avaient bénéficié. Il avait également exercé la fonction de directeur général de Z._ SA de 1975 à 1977 sans rémunération. Enfin, il était le seul collaborateur qui avait travaillé à plein temps aussi longtemps dans l'entreprise et qui avait atteint l'âge de 60 ans au moment de la constitution du premier fonds de prévoyance en faveur des employés de Y._ SA. Faisant enfin référence à l'art. 339d al. 2 CO, il a jugé que ces circonstances particulières justifiaient la déduction de la rente litigieuse comme frais autorisés par l'usage commercial. S'agissant des attributions sur le compte de prévoyance de B._, il a ordonné une expertise qui a été confiée à C._ de la société D._ SA. Se fondant sur les deux rapports d'expertise dûment soumis aux parties pour observations, le Tribunal administratif a jugé qu'aucune des mesures de prévoyance de la Fondation Y._ depuis la modification de ses statuts et de son règlement en 1985 et 1987 ne respectait le principe de collectivité. La répartition des attributions bénévoles, notamment celles faites sur les livrets d'épargne prévoyance, ne respectait pas le principe de planification. Toutefois, B._ appartenait à la génération d'entrée pour laquelle des mesures spéciales de prévoyance pouvaient être prises au sens des art. 31 et 32 LPP. Les mesures prises par la société et la Fondation Y._, en particulier la clé de répartition des attributions bénévoles, étaient, à dires d'experts, souvent utilisées dans la pratique. Elles ne provoquaient en l'espèce pas d'inégalité entre les employés de la générations d'entrée, en particulier par rapport à la situation de E._, né en 1936, le plus ancien employé au service de l'entreprise après B._, dont le compte avait été crédité de 15'300 fr. en 1989, de 15'000 fr. en 1990, de 19'000 fr. en 1991 et de 20'500 fr. en 1992. Les reprises devaient par conséquent être annulées. G. Agissant le 28 janvier 2005 par la voie du recours de droit administratif, l'Administration fédérale des contributions demande au Tribunal fédéral, sous suite de frais et dépens, principalement, l'annulation de l'arrêt du Tribunal administratif du canton de Vaud du 16 décembre 2004 et l'aggravation de la décision sur réclamation du 31 juillet 1997 de l'Administration cantonale des impôts en matière d'impôt fédéral direct en ordonnant en sus la reprise de l'entier et non pas seulement de la moitié des attributions bénévoles versées par X._ SA de 1989 à 1992 au fonds de prévoyance en faveur de B._. Selon elle, le bénéfice imposable pour 1991 et 1992 devait être porté respectivement à 209'500 au lieu de 108'600 fr. et pour 1993 et 1994 respectivement à 243'500 au lieu de 123'200 fr. Elle demande subsidiairement l'annulation de l'arrêt du Tribunal administratif du canton de Vaud du 16 décembre 2004 et la confirmation de la décision sur réclamation du 31 juillet 1997 de l'Administration cantonale des impôts. Elle dénonce une violation des art. 34quater aCst., 81 al. 1 de la loi fédérale du 25 juin 1982 sur la prévoyance professionnelle vieillesse, survivants et invalidité (LPP; RS 831.40) ainsi que 49 al. 1 lettre b et al. 2 de l'arrêté du 9 décembre 1940 concernant la perception d'un impôt fédéral direct (AIFD, RO 1940 II 2021). Le Tribunal administratif du canton de Vaud et la société X._ SA, qui produit une copie de la liste de ses actionnaires au 1er novembre 1991, concluent au rejet du recours. L'Administration cantonale des impôts du canton de Vaud fait siennes les conclusions du recours. 