That implementation of keccak made me sad. Here's a better one.