title: Select interaction: toggle only when clicking feature
body: <p>I have set up a ol3 map with a single vector layer where the features are distinguished by a <code>type</code> attribute. I have added a select interaction that only selects/unselects features with <code>type == 'cp'</code>. So far I have:</p>
  
  <pre><code>selectInteraction = new ol.interaction.Select({
      condition: ol.events.condition.click,
      filter: function (feat, layer) {
          return (feat.get('type') == 'cp');
      }
  });
  </code></pre>
  
  <p>What I want now:</p>
  
  <ul>
  <li>When a feature of type 'cp' is clicked, its selection is toggled (without affecting any other selection)</li>
  <li>Select multiple features without holding down the shift key</li>
  <li>Selection must NOT be cleared if the click occurs where there is no
  feature of type 'cp'</li>
  </ul>
  
  <p>Please help with how to implement this behaviour.</p>