Do we want these to be so tightly serialized? Could run them from async.parallel for example.