**Do you want to request a *feature* or report a *bug*?**
Feature

Right now babel plugin emits globals: https://github.com/facebook/react/issues/16604

```js
window.$RefreshReg$ = () => {};
window.$RefreshSig$ = () => type => type;
```

It would be nice to have them configurable. That would allow to use `import.meta` in environments like SystemJS and have simpler implementation:

```js
import runtime from 'react-refresh/runtime'
runtime.injectIntoGlobalHook(window)

System.constructor.prototype.createContext = function (url) {
  return {
    url,
    $RefreshSig$: runtime.createSignatureFunctionForTransform,
    $RefreshReg$: (type, id) => {
      id = url + ' ' + id
      runtime.register(type, id)
    }
  };
};
```

If you don't mind I could create PR with changes to react-refresh/babel next week.

environment:
```js
{
    "systemjs": "^6.1.4",
    "react": "^16.11.0",
    "react-dom": "^16.11.0",
    "react-refresh": "^0.6.0"
 }
```
return false;
        }
        const initPath = path.get('init');
        const foundInside = findInnerComponents(
          inferredName,
          initPath,
          callback,
        );
        if (foundInside) {
          return true;
        }
        
        const binding = path.scope.getBinding(name);
        if (binding === undefined) {
          return;
        }
        let isLikelyUsedAsType = false;
        const referencePaths = binding.referencePaths;
        for (let i = 0; i < referencePaths.length; i++) {
          const ref = referencePaths[i];
          if (
            ref.node.type !== 'JSXIdentifier' &&
            ref.node.type !== 'Identifier'
          ) {
            continue;
          }
          const refParent = ref.parent;
          if (refParent.type === 'JSXOpeningElement') {
            isLikelyUsedAsType = true;
          } else if (refParent.type === 'CallExpression') {