A useful feature for us anal/ocd music librarians would be an option to tag songs with the original release year of an album.

You can do this with MPFreaker, though it isn't 100% accurate by any means. Simply select Overwrite for Year, and ensure that Album is set to Oldest (no Overwrite necessary for it, though). This will usually get a value from discogs.com which is pretty reliable. If you don't get a year that looks reasonable, you can turn on "Deep search" and try again.

... and for compilation albums, it would be sensible to tag the release date of each indivual song.

Alas, this is something MPFreaker doesn't do, and is not likely to do in the future. Personally, I see compilation albums as pre-iTunes playlists anyway -- so, sometimes I'll convert a compilation into a playlist: make the playlist, turn off the "Compilation" flag for the tracks, then let MPFreaker overwrite most of the data for each constituent track so I can see not only the original release date, but original release album.

allmusic.com and discogs.com are indeed both great for manual reference.

1) run my entire library through mpfreaker to fetch the original year and genre (the year is pretty accurate already - but just in case) (genre field is a mess)
2) run my 'compilation albums' though mpfreaker to retag songs to the their original album
3) delete duplicates.