Scripting chord extensions and progressions

I have a very simple (!) task I want to achieve … to program/add in an iterative/mechanical way intervals and extensions to any note/chord ie so as to populate progressions based on those instructions ( ie if I have a list of minor 3rd intervals and wish to add maj 3rds or any extension… how do I do this … using nth random and lisp random will not coordinate with om+ except in eval1 mode… Next question will be is there the possibility of writing super scripts to sequence chord progression ie I V vi IV and so on and so forth… v.best