doto macro

Basic doto macro.
I'll squash and rebase after comments and possible fixes.
Are the files where I made changes correct ones? It was a bit of a guess from my side.