Shape shifting
This section applies to all shape shifting, including polymorph, wildshaping, alter self, etc. In order to improve balance with 3rd edition rules, I recommend limiting the forms using the CR of the target. I suggest allowing a CR around caster level -2. This allows the forms to still be powerful, but insures that they should be weaker than the character's normal form. It could also be a check as the described below. As per normal 3rd edition rules, characters never gain the following from the target form: Additionally, the character must be familiar with the form. Whether a character is familiar is entirely up to DM descretion, and the DM may choose to allow familiarity. A DM may choose to allow familiarity after a single encounter with a creature, or even from a detailed description in a book, or the DM may require some longer period of study of either a living or dead speciman lasting anywhere from hours to days. The DM could also require a Knowledge(nature) (or other appropriate) check before granting familiarity.
The form must be able to fit in the space available to the character (there can be no hostile creatures in the space, and non-hostile creatures must voluntarily move out of the space). Any items that could not be worn by the new form simply merge into the form and are inaccessible. Items that could be worn in the new form are worn appropriately.
Druids use the Spellcasting(polymorph) subschool skill to control the forms allowed. Also use some rule like the Concentration check above. The base DC is 20, modified as below:

We could grant some free feats at certain levels, like a feat that allows 1 size difference for free, or allows one or more extraordinary abilities for free, or allows certain types, or decreases the DC in certain circumstances.

Here's the general rules to use for shape shifting.