Clean-up some of the text-properties code (jss-wrap-with-text-properties); use our own button code
Cleanup prompt code (eliminate crazy property juping everywhere, wrap all that up in a jss-prompt class and associated methods)