Clean Java-8 Linq style collection implementation