OFBIZ-4053 Implement an entity query builder to be used as a friendlier API for executing entity queries.

Entry point is the static EntityQuery.use(Delegator) method which will then return an EntityQuery instance whose methods support method chaining to set query options.
The query can then be executed using the first(), list(), iterator() and one() methods which respectively return:
- The first result from a result set
- The full list of results from a result set
- An EntityListIterator to iterate over a result set
- The single record from a query that will return only one record (such as a lookup by primary key)

git-svn-id: https://svn.apache.org/repos/asf/ofbiz/trunk@1627940 13f79535-47bb-0310-9956-ffa450edef68