remove some unneccessary reinterpret casts

found these while reviewing the scram code in the c driver (looked at cpp code for comparison).

I did a bit of an audit of how we use reinterpret_cast, and removed the ones that were unnecessary and/or trivial to remove.