web: widgets: TableEditor: code improvements
web-lift: AppendToRender,SimpleAjax,Sse: respect S.contextPath

reactive-web.js and transport handler endpoints need to be context-prefixed
for them to work when being served from a non-root context path
web: widgets: TableEditor: Some bug fixes

 - Simpler, more robust 'modified' calculation
 - Need to reverse actions before applying to initial or passing to save
core: {MappedSignal,Var}#toString = debugString
web: RElem.withElemId
CanForwardTo#forwarder no longer takes call-by-name byt call-by-value
web: PropertyVar.toggleClass
web: TableEditor,ValidityCue: PropertyVar.{appendClass->toggleClass}
so they don't overwrite each other