html resolving and dataloader

Resolving the html field is memory intensive because of MemoryFS, and also because we run a webpack process for every html query on an Mdx node.

Dataloader batches.

var DataLoader = require("dataloader");
var userLoader = new DataLoader(keys =>
myBatchGetUsers(keys)
);

cache keys can be objects

const DataLoader = require("dataloader");
const mdxHTMLLoader = new DataLoader(async keys =>
keys.map(
({ id }, i) => {
return `key${id}`;
},
{ cacheKeyFn: ({ id }) => id }
)
);