convert an error message into a more appropriate debug log entry
fir tcsh prompt aggression
get_exit_code in the shell adaptor now returns None if no exit code is available (instead of raising an exception)

This closes #350
merge from devel
scattered fixes on state callbacks in shell adaptor