CTFE: Typo in typecheck for casts of AddrExp pointers

Was checking the pointer type instead of the pointee type.
Exposed by Test75 in interpret3.d in test suite, when using CTFE to do
const folding.
CTFE: &global -> SymOffExp

optimize() changes AddrExp(globalvar) into a SymOffExp.
But optimize() isn't always called before CTFE, so do it here too.
Merge pull request #2133 from donc/ctfe_internal_fixes

Two more CTFE internal fixes relating to pointers