Put screen location perm cache in a real cache instead of a Map so it can be viewed/cleared/etc; when getting a screen from the perm cache reload subscreens so that new screens are found (was an issue with the old approach)