merge from trunk; clean up some issues