I personally would have chosen an UObject and implemented the GetWorld() method to get a valid UWorld.