WIP: BaseRecurrent and recurrent_apply_method

The scan related code is a typical boilerplate code
of which we had so much in Groundhog. This commit
introduces a way to get rid of it: a decorator that adds iteration
code to a single-step transition function.
So I did a bit of research and I am confused:

https://gist.github.com/rizar/e661d3a83e42587fe38a

Even when I ignore the `updates` thing I get different samples!