in hxt-monad stateful arrows copied from HXT.Arrow and adopted to the monadic version
1. complete hxt version running with monads

All arrow code has been refactored and transformed into monadic code,
only none arrow code is used from hxt modul