Minor code tweaking
Renamed build_record to build_record_class
Documented most the code [ci skip]
Small cleanup of dispatch_criteria_to_providers
Small refactor of Repository::QueryMethod classes