hb_set_t optimizations

First stage of the optimizations changes.

Switched the data structure used for the set. Basic functions supported (creating, setting, checking, etc). A good moment to get it reviewed before switching the rest of the functions (algebra and iter).

Let me know when you have time to discuss this. I have a few ideas for further improvements in stage 2.