title: Unable to remove feature in OpenLayers 3
body: <p>I have read dozens of threads at stackoverflow, but none of them helps. So, this is what I try to do:</p>
  
  <pre><code>features.forEach(function(feature){
      source.removeFeature(feature); 
      console.log("removed");
      console.log(feature);
  });
  </code></pre>
  
  <p>As a result, when I have only one feature selected, I see in the console these messages:</p>
  
  <pre><code>removed Controller.js:525:8
  Object { disposed_: false, onDisposeCallbacks_: undefined, ...}
  </code></pre>
  
  <p>In terms of what I see in the console, everything looks good. But the problem is that the feature is not removed from the map.</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>Now it is even more interesting. If I convert features to array with getArray and do this:</p>
  
  <pre><code> for(var i=0,len=features.length;i&lt;len;i++){
      var feature = features[i];
      source.removeFeature(feature);
   }
   source.clear();
  </code></pre>
  
  <p>when I have a lot of features and only one feature selected, then in this case only this selected feature remains and all the rest features are removed. What the heck is going on??</p>