Handle nils better in Memory::Reader, allow specifying field types