make extensible mdl framework