code: function scrapeIt (url, opts, cb) {
      cb = assured(cb)
      req(url, (err, $, res, body) => {
          if (err) { return cb(err) }
          try {
              let scrapedData = scrapeIt.scrapeHTML($, opts)
              cb(null, {
                  data: scrapedData,
                  $,
                  response: res,
                  body
              })
          }
          catch (err) {
              cb(err);
          }
      })
      return cb._
  }
docs: scrapeIt
  A scraping module for humans.
  
  @name scrapeIt
  @function
  @param {String|Object} url The page url or request options.
  @param {Object} opts The options passed to `scrapeHTML` method.
  @param {Function} cb The callback function.
  @return {Promise} A promise object resolving with:
  
  - `data` (Object): The scraped data.
  - `$` (Function): The Cheeerio function. This may be handy to do some other manipulation on the DOM, if needed.
  - `response` (Object): The response object.
  - `body` (String): The raw body as a string.