Add a bunch of Typeable instances as a step towards replacing 8833adb6e6ef2