Java 8 and Optional introduced as the return value of the authenticate
method