WIP: transactions and stuff
Slightly simplified environment code by lifting

Yep, that actually looks like extremely simple approach for every
Haskell developer and I've just reinvented the wheel :-)
Simplest possible read/write/del keys