Add partial support for laziness

Lot of lazy-related things do not work.
See unittests taht document bad behaviour.
Make simplifications nfa simplifications