title: Create a class extending from ES6 Map
body: <p>Trying to get away with custom get/set functionality on ES6 Maps. Currently using <a href="http://babeljs.io/" rel="noreferrer">Babel</a> to transpile my code to ES5.</p>
  
  <p><code>Chrome Version 41.0.2272.101 m</code></p>
  
  <pre><code>class MyMap extends Map {
      get(key) {
          if (!this.has(key)) { throw new Error(...); }
          return super.get(key);
      }
  
      set(key) {
          if (this.has(key)) { throw new Error(...); }
          return super.set(key);
      }
  }
  </code></pre>
  
  <p>Not sure if I just got the syntax wrong or I'm missing an implementation of some sort. But I get the following error:</p>
  
  <blockquote>
    <p>Method Map.prototype.forEach called on incompatible reciever</p>
  </blockquote>