Refactor to support plugin like babel
Babel plugin object example:

```jsx
type PluginObject = {
  pre?: Function;
  post?: Function;
  manipulateOptions?: Function;

  visitor: ?{
    [key: string]: Function | {
      enter?: Function | Array<Function>;
      exit?: Function | Array<Function>;
    }
  };
};
```

each babel plugin returns an object like this.

we should think in CreateGraphQL PluginObject as well.

---

- [ ] Separate `mongoose` schema to a plugin;
- [ ] Separate `relay` templates to a plugin (figure out how to best do this);
- [ ] Create boilerplate projects for Create-GraphQL plugins;
- [ ] Handle `plugins` property on `.graphqlrc`.