How does this and search work?  isn't self.index a function?  But, you are passing it in as an argument to .index and search.  

index=<self.index>??? --> shouldn't that be a string?  If your configuration has "index" in it, and you add it to the dictionary, then you are also whipping away the function index aren't you?