To make isolate components useful, it really needs to be more independent of other actions. IMO it should not effect the view representation since it is more of a modeling aid and you typically don't want to keep the settings. The isolate invisibility should be completely seperate and always reversable without effecting any permanant view reps.
The "undo isolation" needs to be more robust. At least more than one step. For example if I isolate a few components, then isolate a couple of those again, I cannot undo that with "undo isolate". It's a real pain to go back an manually turn on visibility for hundreds of parts.
It's an essential tool but really needs to be completely independent of other visibility settings.