The main UI components now use ScopedPointers for their children, alleviating the need to call "deleteAllChildren" or "deleteAndZero" in the destructor.