I've been running everything using supervisord lately -- then I only need to maintain a single system startup script. And I can use supervisord under OSX easily as well to run the same stack of stuff.
edit: specifically, I think this was my issue: https://github.com/Supervisor/supervisor/issues/735
which seems to be patched now.