fix and improvements to API::hash_including