refacter, add nested map and struct support
update readme