Rudimentary combat log

It was necessary to pass the state around to move and attack
instead of just the world. Some functions have been updated
to reflect that.