Update AbstractNodeQueue.java to avoid redundant reads of head in peekNode

Avoid spinning on head when a peek/poll observes a null next but the queue is not empty.
@rkuhn calling peekNode from any thread other than the consumer is not fine, as described above. Did I miss something about the producer which somehow negates this?