Write a bunch of type effectiveness tests... seems like I got all the effectivenesses correct