Added onResetComponent() since we need to revert state changes made elsewhere.

Made UiComponentVanilla more modular.
Added comments, renamed and repackaged UiComponent files.
Now a separate server error view for when we have cached content.