Throwing IllegalArgumentException instead of NullPointerException when
null-argument are supplied