Added Slot-Free encoding to HDM

HDM now supports encoding without slots when adding and retrieving
chunks.

Also: HDM added to __init__.py
Parameters and Refinements

Added comments to explain HDM's parameters.
N is now a parameter that controls vector dimensionality.
Threshold now sets the minimum cosine in the request function.
Fixed the slot-free code so that it doesn't add the placeholder by
itself into memory and query vectors.
Changed comments on slot-value code to reflect the fact that the
placeholder is added in by itself under these conditions, but permuted
by its slot.