This is great, it improves readability a lot. I had to add extensions for AndNode, OrNode and Lvar (I added a .value) in TreeDresser but that allowed me to change 3 calls to remove the array indexing. 

I could'nt change two calls in control_parameter since I'm parsing all nodes in those two calls.