Refactor listing as hash, not array of hashes.

Each word is a key, and each value corresponds to the metadata about the word.