@Override
	public Iterator<InstructionBlock> iterator() {
		return new BlockIterator();
	}
Returns an iterator over the blocks in this Instruction set, giving preference to fall
through flows.  This iterator will not follow any flows from a block that has a conflict.
If the last block returned from the iterator is marked as a conflict before the next() or
hasNext() methods are called, then this iterator will respect the conflict.  In other words,
this iterator follows block flows on the fly and doesn't pre-compute the blocks to return.  
Also, if any blocks in this set don't have a flow to path from the start block, it will
not be included in this iterator.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/lang/InstructionSet.java