Add docs, remove QueryBuilderTrait, improve QueryBuilder