Finish the ppx extension

`raise_lwt` is arguably "not in ppx spirit" but I think it's OK. At least it doesn't make things worse than with camlp4.
Why not reuse `fn` ?