Add bloom filter

This PR adds the bloom filter data type and functions.
It also contains adjustments to the AVL data structure.
Can you please provide more verbose documentation and explanation on this one?

Also: Is this a header for stuff which may be overridden by users? If yes, this should probably go into the public interface, shouldn't it?