added new find_by_sql methods which build sql query programmatically based on user input. the new search methods build one huge query instead of using multiple smaller queries. using benchmark.measure, the new methods are much faster. the old methods are still there for now, but not being used.