Refactor to support list and hash
Add the meta type data for keys