Preliminary support for detecting imm -> mut UB risks.

This handles transmutes from & to &mut, and, in unsafe blocks, casts
from * to *mut.