alias struct xhash to xhash
add iteration functionality
simplify the code
add isend
fix some bugs
add a test
add Makefile
add travis.tml