Multi-instance support

Only works in the GUI for now, doesn't break  the command-line client but the new options are not implemented.

Related to #29 
- [ ] Investigate combining download cancellation.

(It's worth noting these ticky-boxes are for me; it's easy for me to scroll through a PR and look for them to see what I'm doing next.)