Mirrors can now be declared using the `mirror` method which works similar to `depends_on` and takes the same arguments as `url`. The formula class now has a public `fetch` method that cycles through the mirror list if the downloader for the primary URL throws a `DownloadError`. Other brew commands, like brew-fetch, also benefit from mirror support by using this method. Closes Homebrew/homebrew#7574.