As stated above, I think having to 'memorise' shapes from monsters, is likely going to be the only way to represent familiarisation. unless you can also allow them to use such on a book that describes various creatures. gaining the forms from those aswell..... but that would be hard to code I imagine. But you can hardly be familliar enough with a form to change into one from simply hearing about it, never having seen it.
If I were going to design this, theoretically, essentially what would have to be done is this:
~Script/write all of the polymorph shapes available via 2das/haks, however the server handles it.
~Balancing all of these
~Write an examine/variable system tied into the "examine" feat, everytime you examine a creature (that are viable polymorph shapes in the script) it adds it to your polymorph database.. might even get a message along the lines of "New polymorph form stored" or something.
~Write the dialog user interface or something, I'd guess you could use the self-only player feats as a mechanic to bring up the menu and select one of your stored forms and override your default shapeshifts/day.
In the end, you're adding a huge resource to one class on the server. I'd -love- to see this change, but its just far too more work that only a few people would ever get to use and the developers time could be spent elsewhere adding new things that a majority of people could enjoy at once. If you're trying to make shapeshifter what its suppose to be, you'll have to make a 2da polymorph form for each different shape.. and balance all of these.