I think that I can pretty much sit in on a moment's notice as long as we are dealing with more or less standard chord progressions. As far as being able to find the key of the song, I don't really have any specific suggestions other than, play along with a lot of songs and develop your ear as you go. The thing is, though, that it is probably not the most efficient way of doing this. But once I'm in the key, I can hear my way through your basic chord changes...it's just a matter of order and timing.