Introduce preferred download peers

Keep track of whether we have peers that are preferred candidates for downloading blocks from, but if there are none, also use others.