Fix includes
Fix TODO
Fix assignments and transform_expr
Use Mersenne Twister method