Add hash utility, make the request/response metadata a hash table
Add some tests
Add some more package definitions