While Pidgin isn't perfect and there aren't any good alternatives we have to use what we have.
There are a couple SessionSave plugins for Pidgin but they seem to be a bit broken.
Since I use Pidgin a lot, I had to find a solution to this problem. I found a "better-sessionsave" plugin (https://code.google.com/p/better-sessionsave/) and forked it because it didn't work for me and it had some weird logic behind it.
If you want to help tidy up the code or help with making it better in some other way, by all means, you are more than welcome to do so. :)