float4 for plane instead of normal dist pair, less returning arrays via func params, more ranged-for tree traversals