Streaming with Djay (4.2.2), soundflower, OBS, Live

I’ve seen several posts here and elsewhere where people try to get some version, usually pro, to work with OBS.  I’m a fairly deep techie/coder using mac audio since mid 90s and this is the most obscure thing I’ve ever battled, but finally I’ve got a usable system after maybe 15 hours of pain.  I’ve posted on the obs community as well.  Here’s what worked:
System: osx sierra, Live 8, soundflower latest (probably works with older), djay 4.2.2 

Audio: Focusrite Scarlett 2x4

1)create multi out device with soundflower master, then builtin audio, then scarlet
2) audio midi studio: set output sound scarlett, make soundflower input in audio
3) in mac sys preferences make output scarlett , input soundflower 2 chan
4) djay output is soundflower; pre-cuing scarlett 3/4
5) in ableton live, set up soundflower 2ch as  input, multiout as output device, activate and audio channel. Check that you see the Djay and you should hear it on scarlett 1.  Without Ableton, you can get audio into OBS but not out of the scarlett main out. 
6) In OBS sources create audio input capture, choose audio source soundflower. Also using desktop audio default works. 

I monitor my twitch stream and it sounds great and I’m able to pre-cue while getting booming sound that I can feel. 
I have found other variations using aggregate devices with audio that rapidly becomes glitchy/stuttery, or that did not allow monitoring, or that allowed monitoring but not main out, or bizarrely had everything sound great but the crossfader was inverted. 

Good luck.  I hope this might be useful for algoriddim. 
twitch.tv/dr_strangevibe    (afro brazilian nujazz funk + visuals) 

I suspect that if you substitute any program with split input output for Ableton Live this may work, to keep it in the realm of free/low cost except for Djay.  I’ll try it out with Audacity sometime. 

In my case I had Live already so it was an easy choice. 
One could also use the open source python audio system pyo, which allows separate devices for input and output and just route through with a 2 line app.