Bring some more functionality into the BaseSphere class, mostly static methods to take the implementation details out of Pi.cpp
Then delay generating the GasGiant textures until they're either visible or a reasonable period of tie has elapsed.