title: V3.34 fitbound shows additional clusters on map reposition
body: <p>We are experiencing similar issue as described by the fiddler below.</p>
  <p><a href="http://jsfiddle.net/Lmm5hrp9/2/" rel="nofollow noreferrer">http://jsfiddle.net/Lmm5hrp9/2/</a></p>
  <pre><code>var map;
  var markers;
  var markerCluster;
  var markersAmount;
  var gridSize;
  var minimumClusterSize;
  var t0, t1;
  
  function initialize() {
  
      var center = new google.maps.LatLng(0, 0);
  
      map = new google.maps.Map(document.getElementById('map-canvas'), {
          zoom: 4,
          center: center,
          mapTypeId: google.maps.MapTypeId.ROADMAP
      });
      
      createMarkers();
  }
  
  function createMarkers() {
  
      // Define the number of random markers to create
      markersAmount = isNaN(document.getElementById('markersAmount').value) ? 5000 : document.getElementById('markersAmount').value;
  
      // Define the marker cluster grid size
      gridSize = isNaN(document.getElementById('gridSize').value) ? 100 : document.getElementById('gridSize').value;
  
      // Define the marker cluster minimum cluser size
      minimumClusterSize = isNaN(document.getElementById('minimumClusterSize').value) ? 10 : document.getElementById('minimumClusterSize').value;
  
      // Empty markers array
      markers = [];
      // Cluster all the markers
  
      // Define the max latitude on a mercator projection
      var maxLat = Math.atan(Math.sinh(Math.PI)) * 180 / Math.PI;
  
      // Loop and create the markers
      for (var i = 0; i &lt; markersAmount; i++) {
  
          // Calculate a random lat and lng
          var lat = Math.floor(Math.random() * (maxLat * 2)) - maxLat;
          var lng = Math.floor(Math.random() * 360) - 180;
  
          var marker = new google.maps.Marker({
              position: new google.maps.LatLng(lat, lng)
          });
  
          markers.push(marker);
      }
      markerCluster = new MarkerClusterer(map, markers, {
        imagePath: 'https://googlemaps.github.io/js-marker-clusterer/images/m',
        gridSize: parseInt(gridSize),
        minimumClusterSize: parseInt(minimumClusterSize)
      });
      
  }
  
  function fitBounds() {
  
      var bounds = new google.maps.LatLngBounds();
          markers.forEach(m =&gt; bounds.extend(m.getPosition()));
      map.fitBounds(bounds);
  }
  
  google.maps.event.addDomListener(document.getElementById('fitBounds'), 'click', fitBounds);
  google.maps.event.addDomListener(window, 'load', initialize);
  </code></pre>
  <p>This worked fine in v3.31 without any issues however that version is deprecated now.</p>
  <p>We also see that the fitbounds is used in markercluster as well. Do we need to make changes in this as well?</p>
  <p>What would be an alternative that can be used to resolve this issue?</p>