Fix ashr behavior on non-native bitfield widths
Simplify some type signatures
Embarassingly unsafe zero-extension
Sign-extension in similar spirit
Truncation in similar spirit