Lwt sig cleanup

This is the remaining work that I did on the lwt backend. I've described the problems I've ran into in the other PR so this is here mostly if you're curious or want to fix things up.

The change set will look much smaller once we merge your PR. However, I think we should get rid of oasis before we pick up the pieces on this.