Reimplement dsl making it lazy and immutable.
Minor changes on tests related to dsl changes.
Simplify code api.

With main purpose of guaranty the immutability on executing queries
and removing useless constructions.
Update documentation.