Some minor speedups
Set test with various types of elements
New Set that use buckets based on typeof and constructor.name.
Using `prop in obj` to detect primitive element presence
tests use some falsy element, fixed storage of booleans
Extracting `constructor.name` as "hashing", defaultBucket
nil is put into 'boolean' fastBucket

Fastbucket 'boolean' is now more the 'well known constants' one,
keeping name from typeof of false and true.
BucketStore extracted.
Class comment added to Set.
Set and BucketStore refactorings:
- improve the class comments
- categorize all methods
- rename hashFn to hashBlock
Some minor reformattings in Set
More method comments in Set
Fixes BucketStore >> do:
Renames Set >> bucketOfElement: to bucketsOfElement: