Prototype of auto-reconnect functionality

PoC, totally untested yet
the main problem is that the signature of `execute` function is changed --
by changing `auto_reconnect`'s value you would, basically, get different interface -- `execute` would become coroutine
and, for example, pipe-lineing would work as easy is it does now