lots of cleanup changes.