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.
Is this correct, to prefer inbound?