some design cleanup