First attempt from guava to get closer to lambdas

Not to merge yet. Just for discussion.

Guava have a `FluentIterable` that allow us to use filters, collectors and so on very similar with Java 8 `Stream`. What you think to use this feature to allow us to get more closer to Java 8?

Note that the code runs perfect with current code. This change is only a "cosmetic feature". But I think that can be very good to stay more closer to the best Java 8 feature.