Widget Customizer: Improve error handling. First pass.

* Replace Widget_Customizer_Exception with WP_Error
* Call Previewer.cheatin() to show the cheating message if a user can't change widgets
* Call Previewer.login() to show the login form if a user is logged out
* Show a generic error message on failures

see #27419.

git-svn-id: https://develop.svn.wordpress.org/trunk@27652 602fd350-edb4-49c9-b593-d223f7449a82
Widget Customizer: Fix 'WidgetCustomizerPreview' is undefined error in IE8/9.

* Move `WidgetCustomizerPreview` to `wp.customize.WidgetCustomizerPreview`
* Move `WidgetCustomizerPreview_exports` to export_preview_data()
* Use `_wpWidgetCustomizerPreviewSettings` to transfer settings to `wp.customize.WidgetCustomizerPreview`

see #27485.

git-svn-id: https://develop.svn.wordpress.org/trunk@27653 602fd350-edb4-49c9-b593-d223f7449a82
Widget Customizer: Use Underscores `indexOf` for IE8 compatibility.

props adamsilverstein.
see #27485.

git-svn-id: https://develop.svn.wordpress.org/trunk@27654 602fd350-edb4-49c9-b593-d223f7449a82