unordered_set implementation (thanks to Thomas Hume)