Writing Scalable React Apps with the Component Folder Pattern
Donavon West

This is definitely a clean solution! One thing bugged me though.

Since you are already using class properties (state = {} straight instead of inside constructor), why not use arrow functions to eliminate need for binding this?

So instead of :

load = this.load.bind(this);
async load(...args) {

do this:

load = async (...args) => {