refactored and renamed.  moved messages to more appropriate places.