Found initialization problem with:

                scope.$watch("modalMdata", function (newValue, oldValue) {
                    if(newValue != null)    <<<<<<<
                      localScope.$parent.data.dstSel = newValue;
Some improvement and cleanup.

Trying to add preserveState and restoreState to revert after
cancel.  Not working correctly yet.
Calling restoreState from html working better than calling it in the hidden event handler.