added eat, and a few more test