docs: function watch(...args) {
    let path = args[0]
    let handler = args[1]
  
    if (args.length < 2) {
  
      // Run
      if (args.length === 0)
        return watch.run()
  
      switch (typeof path) {
        case 'object':
          for (let _path in path) {
            watch(_path, path[_path])
          }
          break
  
        case 'string':
          watch.run({ url: path })
          break
  
        default:
          throw new Error('Illage usage.')
      }
  
      return watch
    } else {
      if (!('_watching' in watch)) {
        watch._watching = []
      }
  
      let rule = createRule(path, handler)
      watch._watching.push(rule)
    }
  
    return watch
  }