refactor around uiwebview