The tutorial makes it seem more complicated than it actually is. JSONDog and the constructor example has no place there.
I felt this was a good approach given how aliasing builds off of it, but I may have missed a better approach. These are just ones that have worked well for me.