adding documentation and fixing some code
testing hash table... (still)