code: function(path, root) {
    return new P(function(resolve, reject) {
      if(isRelativePath(path)) {
        path = isUrl(root) ?
          url.resolve(root, path) :
          join(root, path);
      }
  
      if(isUrl(path)) {
        request.get(path, {encoding: null}, function(err, response, body) {
          if(err) { return reject(err); }
          return response.statusCode === 200 ?
            resolve(body) :
            reject(new Error('Got status ' + response.statusCode + ' fetching ' + path));
        });
      } else {
        fs.readFile(path, function(err, body) {
          return err ?
            reject(err) :
            resolve(body);
        });
      }
    });
  }
docs: Fetch assets contents at `path`, may be either url or location on disk.  If path is not absolute it will be interpreted relative to `root` (`root` will either be a working directory or a url base).  Should resolve to a buffer in all cases