re-factor survey components, and minor improvements to ui