Restructure / implement more functionality

Hi Nils!

I was looking for a good wrapper for downloading files from BaseSpace and I found your scripts! Great initiative. I think a good set of wrappers for additional functionality would be great. I rewrote this script pretty heavily (mostly just to be a bit more Pythonic) while keeping the general flow you had. I think the result is quite tidy but there are still some more features I'd like to add and some more restructuring as well. If you'd rather skip this PR that's fine but I think collaborations are always a good thing (and I love the ascii art!).

Best,
Mario
Or we could have one tool:
* ```download_basespace.py projects ...```
* ```download_basespace.py samples ...```
* ```download_basespace.py etc ...```