Added ContainsRecursiveFunctionProvider class.

This class will be used to handle queries that use
contains_recursive method which takes 2 arguments
1. A consumer that returnes container (i.e. entity.contains)
2. Any predicate (i.e. entity.type=types.barrel)
The method returns true iff there exists an entity
within the container that matches the condition