xapian-bridge C port

endlessm/eos-sdk#2463
I guess that's unavoidable because you can use both const and non-const pointers as keys and values for the hash table.