Adding more command line arguments, namely to fetch.

* Refactoring some stuff in args to encapsulate package list location.
* Adding --all-except for inverted package lists.
* Adding --download-directory / -d for choosing where to download files.
* Adding --overwrite to have fetch overwrite existing files.