Rewritten PerfectHashTable.cs

First version was a rough. This version is better-written and includes source-code comments. Should also perform quite well, and should maintain constant performance when compared to a dictionary (where performance decreases as items increase).