Update to support multiple-source download

Current version downloads only a single file specified last. For example,

```js
new Download()
  .get('http://foo.com/file_0.txt')
  .get('http://foo.com/file_1.txt')
```

Of course, we expect the script to download both `file_0.txt` and `file_1.txt` but it doesn't.

I fixed this problem and added more tests to cover various cases.