Optimization in KDE Base
Added class BindingSet which holds a copy of one row of query result bindings for caching purposes.
Internally it is nothing more than a QHash but it is quite useful when you want to iterate over a query result and use each row to do something to the model (again the problem that iterators are invalidated by model actions)
Now that I could finally test my optimized inferencing algo I found the last (hopefully) bugs and it works. It got a bit more complicated but I think i did a good job in designing the code and I think I never before documented code this well (which still does not mean that everyone can understand it from the start ;)
The tests were very encouraging. I got a major speed improvement by my optimizations.
Maybe I will write my algo down in a little paper these days, just for fun (and to make Nepomuk reimplement it in java ;)