title: Babel throwing errors on async/await syntax despite having the correct presets/plugins
body: <p>I'm trying to use Babel to compile an async/await function, but I'm receiving a compiler error.</p>
  
  <p>Here is my function:</p>
  
  <pre><code>async function login(username, password) {
    try {
      const response = await request
        .post("/api/login")
        .set("Accept", "application/json")
        .send({username, password})
        .end();
  
      const {user} = response.body;
      console.log("Login success:", user);
      this.user = user;
      this.loginError = null;
    } catch(error) {
      console.log(`Login failed: ${error}`);
      this.user = null;
      this.loginError = error;
    }
  }
  </code></pre>
  
  <p>Here is the error:</p>
  
  <pre><code>ERROR in ./src/store/store.js
  Module parse failed: /home/james/projects/Issue-Tracker/node_modules/babel-loader/index.js!/home/james/projects/Issue-Tracker/src/store/store.js The keyword 'await' is reserved (20:25)
  You may need an appropriate loader to handle this file type.
  SyntaxError: The keyword 'await' is reserved (20:25)
      at Parser.pp$4.raise (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:2221:15)
      at Parser.pp$3.parseIdent (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:2182:14)
      at Parser.pp$3.parseExprAtom (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:1774:21)
      at Parser.pp$3.parseExprSubscripts (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:1715:21)
      at Parser.pp$3.parseMaybeUnary (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:1692:19)
      at Parser.pp$3.parseExprOps (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:1637:21)
      at Parser.pp$3.parseMaybeConditional (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:1620:21)
      at Parser.pp$3.parseMaybeAssign (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:1597:21)
      at Parser.pp$3.parseMaybeAssign (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:1608:25)
      at Parser.pp$3.parseExpression (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:1573:21)
      at Parser.pp$1.parseStatement (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:727:47)
      at Parser.pp$1.parseBlock (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:981:25)
      at Parser.pp$1.parseTryStatement (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:897:23)
      at Parser.pp$1.parseStatement (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:702:31)
      at Parser.pp$1.parseSwitchStatement (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:873:36)
      at Parser.pp$1.parseStatement (/home/james/projects/Issue-Tracker/node_modules/acorn/dist/acorn.js:700:34)
   @ ./src/store/index.js 7:13-31
  </code></pre>
  
  <p>And here is my <code>.babelrc</code>:</p>
  
  <pre><code>{
    "presets": ["latest", "react"],
    "plugins": ["transform-decorators-legacy", "transform-object-rest-spread", "transform-class-properties"]
  }
  </code></pre>
  
  <p>According to the docs for <a href="https://babeljs.io/docs/plugins/preset-latest/" rel="nofollow">babel-preset-latest</a>, it includes preset-es2017 which includes transform-async-to-generator, so I don't understand why this wouldn't compile.</p>
  
  <p>Any help would be much appreciated.</p>