djinni support

not ready to merge, simply here to let others track the progress easily.