Support for intrinsics ctlz,ctpop,cttz and bswap

This branch teaches souper about intrinsics and the corresponding test cases are also added.
You can implement this more simply with `ConcatExpr::create` and `ExtractExpr::create`.