QueryBuilder: added interface for field() builder
phpdoc
QueryBuilder: added FactoryInterface + implemented
Refactored builder/factory architecture

A builder (there are several) does two things:
- spawn more builders (sortBy or field)
- create a Factory that's passed on to a FactoryWorker

Factory (Criterion, SortClause) objects hold parameters for an object (Criterion, SortClause),
and can instantiate this object.

FactoryWorker objects hold a Factory object, and sets values on it (operator, value...). They
may return another worker, or instantiate the factorized object, and return a builder.
QueryBuilder: implemented SortClause handling
phpdoc