Odd/even tests now throw meaningful exception if testing a null value and for loop is now null safe