Added support to subqueries (JPQL)

example:
QueryByFilter query = new QueryByFilter(MainClass.class);
QueryByFilter subQuery = new QueryByFilter(OtherClass.class);
subQuery.addProjection("otherClassId");
query.addItem("attributeOfTypeOtherClass", QueryOperator.NOT_IN,
subquery);

ATTENTION: in the subquery it is MANDATORY to declare a projection; if
the expected result of the subquery is OtherClass, use the primary key
field for the projection