In a large saucepan, heat the olive oil over medium heat. Add the onion, season with salt and pepper and cook, stirring often, until softened, about 7 minutes. Add the potatoes and 31/2 cups water and bring to a boil; lower the heat and simmer for 5 minutes. Add the broccoli, cover and cook just until tender, about 7 minutes. Using a blender, puree half the soup; combine with the other half. Stir in 2 cups shredded cheese, then stir in the cream. Season with salt and pepper and keep warm over low heat.