You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by dk...@apache.org on 2018/11/06 03:36:04 UTC

[sling-whiteboard] branch master updated: Removing cms and file-optim as they are separate projects

This is an automated email from the ASF dual-hosted git repository.

dklco pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-whiteboard.git


The following commit(s) were added to refs/heads/master by this push:
     new 255796a  Removing cms and file-optim as they are separate projects
255796a is described below

commit 255796a71d6e1aa0cfab05c85639f0cec27daf2a
Author: Dan Klco <da...@perficient.com>
AuthorDate: Mon Nov 5 22:35:56 2018 -0500

    Removing cms and file-optim as they are separate projects
---
 cms/.gitignore                                     |  16 -
 cms/README.md                                      |  19 -
 cms/builder/pom.xml                                | 167 ---------
 cms/builder/src/main/provisioning/boot.txt         |  54 ---
 cms/builder/src/main/provisioning/cms.txt          |  40 ---
 cms/builder/src/main/provisioning/composum.txt     |  30 --
 cms/builder/src/main/provisioning/launchpad.txt    |  23 --
 cms/builder/src/main/provisioning/oak.txt          |  91 -----
 cms/builder/src/main/provisioning/repoinit.txt     |  98 -----
 cms/builder/src/main/provisioning/scripting.txt    |  61 ----
 .../src/main/provisioning/sling-caconfig.txt       |  34 --
 .../src/main/provisioning/sling-discovery.txt      |  46 ---
 cms/builder/src/main/provisioning/sling-event.txt  |  42 ---
 .../provisioning/sling-models-jacksonexporter.txt  |  25 --
 .../src/main/provisioning/sling-rewriter.txt       |  39 --
 .../src/main/provisioning/sling-validation.txt     |  41 ---
 cms/builder/src/main/provisioning/sling.txt        | 220 ------------
 cms/builder/src/main/provisioning/standalone.txt   |  26 --
 cms/builder/src/main/provisioning/webapp.txt       |  25 --
 cms/builder/src/main/scripts/start.sh              |  56 ---
 cms/builder/src/main/scripts/stop.sh               |  46 ---
 cms/core/pom.xml                                   | 178 ---------
 .../java/org/apache/sling/cms/CMSConstants.java    |  95 -----
 .../main/java/org/apache/sling/cms/CMSUtils.java   |  61 ----
 .../sling/cms/core/filters/CMSSecurityFilter.java  | 153 --------
 .../cms/core/filters/CMSSecurityFilterConfig.java  |  39 --
 .../sling/cms/core/filters/EditIncludeFilter.java  | 135 -------
 .../sling/cms/core/filters/LocaleFilter.java       |  74 ----
 .../sling/cms/core/filters/PublishFilter.java      |  90 -----
 .../cms/core/models/AbstractContentModel.java      | 124 -------
 .../apache/sling/cms/core/models/Component.java    | 170 ---------
 .../sling/cms/core/models/ComponentManager.java    | 110 ------
 .../sling/cms/core/models/EditableResource.java    |  83 -----
 .../apache/sling/cms/core/models/ErrorHandler.java | 122 -------
 .../apache/sling/cms/core/models/LocaleList.java   |  48 ---
 .../sling/cms/core/models/LocaleResource.java      |  42 ---
 .../org/apache/sling/cms/core/models/Page.java     | 114 ------
 .../apache/sling/cms/core/models/PageManager.java  |  44 ---
 .../apache/sling/cms/core/models/PageTemplate.java | 134 -------
 .../sling/cms/core/models/PageTemplateManager.java |  68 ----
 .../sling/cms/core/models/RedirectAttribute.java   |  72 ----
 .../sling/cms/core/models/ReferenceOperation.java  |  93 -----
 .../apache/sling/cms/core/models/References.java   |  47 ---
 .../org/apache/sling/cms/core/models/Site.java     | 179 ----------
 .../apache/sling/cms/core/models/SiteConfig.java   |  66 ----
 .../apache/sling/cms/core/models/SiteManager.java  |  38 --
 .../apache/sling/cms/core/models/i18nHelper.java   |  62 ----
 .../cms/core/operations/BulkReplaceOperation.java  | 169 ---------
 .../cms/core/operations/CheckpointOperation.java   | 114 ------
 .../operations/PropertyHintNodeNameGenerator.java  | 123 -------
 .../operations/UpdateReferencesPostOperation.java  |  79 ----
 .../sling/cms/core/rewriter/HTML5Serializer.java   | 159 ---------
 .../cms/core/rewriter/Html5SerializerFactory.java  |  44 ---
 .../core/rewriter/ReferenceMappingTransformer.java | 170 ---------
 .../ReferenceMappingTransformerConfig.java         |  32 --
 .../ReferenceMappingTransformerFactory.java        |  63 ----
 .../sling/cms/core/servlets/CMSPageServlet.java    |  65 ----
 .../cms/core/servlets/VersionInfoServlet.java      | 142 --------
 .../main/resources/OSGI-INF/l10n/bundle.properties |  65 ----
 cms/docker/Dockerfile                              |  55 ---
 cms/docker/cache_disk.conf                         |  17 -
 cms/docker/cms.conf                                |  22 --
 cms/docker/site.conf                               |  49 ---
 cms/pom.xml                                        | 142 --------
 cms/reference/pom.xml                              | 151 --------
 .../sling/cms/reference/models/ItemList.java       | 161 ---------
 .../apache/sling/cms/reference/models/Search.java  | 161 ---------
 .../components/general/breadcrumb/breadcrumb.jsp   |  32 --
 .../components/general/breadcrumb/edit.json        |  23 --
 .../reference/components/general/codeblock.json    |   5 -
 .../components/general/codeblock/codeblock.jsp     |  20 --
 .../components/general/codeblock/edit.json         |  16 -
 .../components/general/columncontrol.json          |   5 -
 .../general/columncontrol/columncontrol.jsp        |  44 ---
 .../components/general/columncontrol/config.json   |  19 -
 .../components/general/columncontrol/edit.json     |  39 --
 .../components/general/columncontrol/options.jsp   |  26 --
 .../apps/reference/components/general/cta.json     |   5 -
 .../reference/components/general/cta/config.json   |  12 -
 .../apps/reference/components/general/cta/cta.jsp  |  24 --
 .../reference/components/general/cta/edit.json     |  50 ---
 .../reference/components/general/cta/options.jsp   |  26 --
 .../apps/reference/components/general/iframe.json  |   5 -
 .../components/general/iframe/config.json          |  19 -
 .../reference/components/general/iframe/edit.json  |  44 ---
 .../reference/components/general/iframe/iframe.jsp |  26 --
 .../components/general/iframe/options.jsp          |  26 --
 .../apps/reference/components/general/image.json   |   5 -
 .../reference/components/general/image/config.json |  12 -
 .../reference/components/general/image/edit.json   |  34 --
 .../reference/components/general/image/image.jsp   |  22 --
 .../reference/components/general/image/options.jsp |  26 --
 .../apps/reference/components/general/list.json    |   5 -
 .../reference/components/general/list/config.json  |  25 --
 .../reference/components/general/list/edit.json    |  63 ----
 .../reference/components/general/list/init.jsp     |  29 --
 .../reference/components/general/list/item.jsp     |  32 --
 .../reference/components/general/list/list.jsp     |  31 --
 .../components/general/list/pagination.jsp         |  58 ---
 .../reference/components/general/rss/rss.xml.jsp   |  56 ---
 .../apps/reference/components/general/search.json  |   5 -
 .../components/general/search/config.json          |  46 ---
 .../reference/components/general/search/edit.json  |  24 --
 .../components/general/search/pagination.jsp       |  58 ---
 .../reference/components/general/search/result.jsp |  32 --
 .../reference/components/general/search/search.jsp |  41 ---
 .../components/general/sitemap/sitemap.xml.jsp     |  35 --
 .../reference/components/general/stylewrapper.json |   5 -
 .../components/general/stylewrapper/config.json    |  12 -
 .../components/general/stylewrapper/edit.json      |  17 -
 .../components/general/stylewrapper/options.jsp    |  26 --
 .../general/stylewrapper/stylewrapper.jsp          |  22 --
 .../reference/components/general/suffixheader.json |   5 -
 .../components/general/suffixheader/edit.json      |  55 ---
 .../general/suffixheader/suffixheader.jsp          |  30 --
 .../apps/reference/components/general/tags.json    |   5 -
 .../reference/components/general/tags/config.json  |  34 --
 .../reference/components/general/tags/edit.json    |   9 -
 .../reference/components/general/tags/tags.jsp     |  34 --
 .../apps/reference/components/pages/base.json      |   5 -
 .../apps/reference/components/pages/base/base.jsp  |  24 --
 .../apps/reference/components/pages/base/body.jsp  |  69 ----
 .../reference/components/pages/base/content.jsp    |  20 --
 .../apps/reference/components/pages/base/edit.json |  98 -----
 .../apps/reference/components/pages/base/head.jsp  |  32 --
 .../apps/reference/components/pages/post.json      |   6 -
 .../reference/components/pages/post/content.jsp    |  22 --
 .../apps/reference/components/pages/post/edit.json | 105 ------
 .../resources/jcr_root/apps/reference/i18n.json    |  32 --
 .../src/main/resources/jcr_root/content.json       |   3 -
 .../main/resources/jcr_root/content/apache.json    |  42 ---
 .../resources/jcr_root/etc/taxonomy/reference.json |   8 -
 .../reference/img/SupportApache-small.png          | Bin 96596 -> 0 bytes
 .../static/clientlibs/reference/img/apache.png     | Bin 12022 -> 0 bytes
 .../static/clientlibs/reference/img/favicon.ico    | Bin 1150 -> 0 bytes
 .../static/clientlibs/reference/img/sling.svg      |  19 -
 .../jcr_root/static/clientlibs/reference/site.css  | 339 ------------------
 cms/ui/pom.xml                                     | 137 -------
 cms/ui/src/main/frontend/gulpfile.js               | 102 ------
 cms/ui/src/main/frontend/package.json              |  31 --
 .../frontend/src/fonts/OpenSans-Bold-webfont.woff  | Bin 22432 -> 0 bytes
 .../frontend/src/fonts/OpenSans-Light-webfont.woff | Bin 22248 -> 0 bytes
 .../src/fonts/OpenSans-Regular-webfont.woff        | Bin 22660 -> 0 bytes
 .../src/fonts/OpenSans-Semibold-webfont.woff       | Bin 22908 -> 0 bytes
 .../frontend/src/img/android-chrome-192x192.png    | Bin 3262 -> 0 bytes
 .../frontend/src/img/android-chrome-512x512.png    | Bin 7552 -> 0 bytes
 .../src/main/frontend/src/img/apple-touch-icon.png | Bin 3224 -> 0 bytes
 cms/ui/src/main/frontend/src/img/asf-logo.svg      | 227 ------------
 cms/ui/src/main/frontend/src/img/browserconfig.xml |  27 --
 cms/ui/src/main/frontend/src/img/favicon-16x16.png | Bin 497 -> 0 bytes
 cms/ui/src/main/frontend/src/img/favicon-32x32.png | Bin 800 -> 0 bytes
 cms/ui/src/main/frontend/src/img/favicon.ico       | Bin 15086 -> 0 bytes
 cms/ui/src/main/frontend/src/img/gradient.jpg      | Bin 24313 -> 0 bytes
 .../src/main/frontend/src/img/mstile-150x150.png   | Bin 2473 -> 0 bytes
 .../main/frontend/src/img/safari-pinned-tab.svg    |  19 -
 cms/ui/src/main/frontend/src/img/sling-logo.png    | Bin 2957 -> 0 bytes
 cms/ui/src/main/frontend/src/img/sling-logo.svg    |  19 -
 cms/ui/src/main/frontend/src/js/scripts.js         | 396 ---------------------
 cms/ui/src/main/frontend/src/scss/_fonts.scss      |  43 ---
 cms/ui/src/main/frontend/src/scss/_grid.scss       | 125 -------
 cms/ui/src/main/frontend/src/scss/form.scss        |  75 ----
 cms/ui/src/main/frontend/src/scss/index.scss       | 122 -------
 cms/ui/src/main/frontend/src/scss/styles.scss      | 171 ---------
 .../resources/SLING-INF/nodetypes/nodetypes.cnd    |  76 ----
 cms/ui/src/main/resources/jcr_root/ROOT.json       |   5 -
 .../src/main/resources/jcr_root/conf/global.json   | 139 --------
 cms/ui/src/main/resources/jcr_root/content.json    |   3 -
 .../content/sling-cms/errorhandling/401.json       |  17 -
 .../content/sling-cms/errorhandling/403.json       |  17 -
 .../content/sling-cms/errorhandling/404.json       |  17 -
 .../content/sling-cms/errorhandling/default.json   |  17 -
 .../etc/clientlibs/sling-cms-editor/editor.css     | 112 ------
 .../etc/clientlibs/sling-cms-editor/editor.js      |  80 -----
 .../resources/jcr_root/etc/i18n/jcr%3Acontent.json |   4 -
 .../jcr_root/etc/taxonomy/jcr%3Acontent.json       |   4 -
 .../availablecomponenttypes.jsp                    |  44 ---
 .../libs/sling-cms/components/cms/blank/blank.jsp  |  18 -
 .../components/cms/columns/actions/actions.jsp     |  35 --
 .../cms/columns/lastmodified/lastmodified.jsp      |  26 --
 .../cms/columns/localetitle/localetitle.jsp        |  23 --
 .../sling-cms/components/cms/columns/name/name.jsp |  32 --
 .../components/cms/columns/publish/publish.jsp     |  33 --
 .../components/cms/columns/static/static.jsp       |  23 --
 .../sling-cms/components/cms/columns/text/text.jsp |  32 --
 .../sling-cms/components/cms/componentconfig.json  |   5 -
 .../cms/componentconfig/componentconfig.jsp        |  43 ---
 .../components/cms/componentconfig/edit.json       |  21 --
 .../cms/contentactions/contentactions.jsp          |  22 --
 .../cms/contentbreadcrumb/contentbreadcrumb.jsp    |  47 ---
 .../components/cms/contentnav/contentnav.jsp       |  50 ---
 .../components/cms/contenttable/contenttable.jsp   |  48 ---
 .../components/cms/editconfig/editconfig.jsp       |  20 --
 .../sling-cms/components/cms/fileeditorconfig.json |   5 -
 .../cms/fileeditorconfig/config/config.jsp         |  42 ---
 .../cms/fileeditorconfig/config/edit.json          |  23 --
 .../cms/fileeditorconfig/fileeditorconfig.jsp      |  29 --
 .../cms/fileeditorinclude/fileeditorinclude.jsp    |  50 ---
 .../components/cms/i18ntable/i18ntable.jsp         |  79 ----
 .../components/cms/includeconfig/includeconfig.jsp |  21 --
 .../components/cms/includeeditor/includeeditor.jsp |  21 --
 .../components/cms/pageeditbar/actions/actions.jsp |  35 --
 .../components/cms/pageeditbar/pageeditbar.jsp     |  28 --
 .../propertieseditor/propertieseditor.jsp          |  21 --
 .../components/cms/pageeditor/pageeditor.jsp       |  20 --
 .../components/cms/pageproperties/include.jsp      |  25 --
 .../cms/pageproperties/pageproperties.jsp          |  25 --
 .../components/cms/pagewrapper/pagewrapper.jsp     |  22 --
 .../libs/sling-cms/components/cms/parameter.json   |   5 -
 .../components/cms/rewriterconfig/edit.json        |  25 --
 .../cms/rewriterconfig/rewriterconfig.jsp          |  34 --
 .../libs/sling-cms/components/cms/siteconfig.json  |   5 -
 .../components/cms/siteconfig/siteconfig.jsp       |  29 --
 .../libs/sling-cms/components/cms/sitenav.json     |   3 -
 .../components/cms/staticnav/staticnav.jsp         |  31 --
 .../cms/templateeditor/config/config.jsp           |  70 ----
 .../components/cms/templateeditor/config/edit.json |  48 ---
 .../cms/templateeditor/templateeditor.jsp          |  31 --
 .../cms/versionmanager/versionmanager.jsp          |  98 -----
 .../components/editor/fields/base/base.jsp         |  50 ---
 .../components/editor/fields/button/button.jsp     |  22 --
 .../sling-cms/components/editor/fields/file.json   |   4 -
 .../components/editor/fields/file/field.jsp        |  50 ---
 .../sling-cms/components/editor/fields/hidden.json |   5 -
 .../components/editor/fields/hidden/edit.json      |  23 --
 .../components/editor/fields/hidden/hidden.jsp     |  20 --
 .../components/editor/fields/namehint/namehint.jsp |  20 --
 .../sling-cms/components/editor/fields/path.json   |   4 -
 .../components/editor/fields/path/field.jsp        |  26 --
 .../editor/fields/references/references.jsp        |  52 ---
 .../components/editor/fields/repeating.json        |   4 -
 .../components/editor/fields/repeating/field.jsp   |  44 ---
 .../components/editor/fields/richtext.json         |   4 -
 .../components/editor/fields/richtext/field.jsp    |  36 --
 .../sling-cms/components/editor/fields/select.json |   6 -
 .../components/editor/fields/select/edit.json      |  30 --
 .../components/editor/fields/select/field.jsp      |  57 ---
 .../editor/fields/siblingselect/siblingselect.jsp  |  63 ----
 .../editor/fields/suffixlabel/suffixlabel.jsp      |  23 --
 .../components/editor/fields/taxonomy.json         |   6 -
 .../components/editor/fields/taxonomy/edit.json    |  23 --
 .../components/editor/fields/taxonomy/field.jsp    |  49 ---
 .../sling-cms/components/editor/fields/text.json   |   6 -
 .../components/editor/fields/text/edit.json        |  90 -----
 .../components/editor/fields/text/field.jsp        |  20 --
 .../components/editor/fields/textarea.json         |   6 -
 .../components/editor/fields/textarea/field.jsp    |  20 --
 .../editor/scripts/componentConfigOptions.jsp      |  33 --
 .../editor/scripts/configResourceTypeOptions.jsp   |  31 --
 .../components/editor/scripts/finalize.jsp         |  33 --
 .../sling-cms/components/editor/scripts/init.jsp   |  25 --
 .../components/editor/scripts/localeOptions.jsp    |  27 --
 .../editor/scripts/pageTemplateOptions.jsp         |  27 --
 .../editor/scripts/resourceTypeOptions.jsp         |  35 --
 .../components/editor/slingform/slingform.jsp      |  30 --
 .../components/general/container/container.jsp     |  38 --
 .../sling-cms/components/general/richtext.json     |   5 -
 .../components/general/richtext/edit.json          |  16 -
 .../components/general/richtext/richtext.jsp       |  20 --
 .../libs/sling-cms/components/pages/base.json      |   4 -
 .../libs/sling-cms/components/pages/base/base.jsp  |  23 --
 .../libs/sling-cms/components/pages/base/body.jsp  |  36 --
 .../sling-cms/components/pages/base/content.jsp    |  20 --
 .../libs/sling-cms/components/pages/base/head.jsp  |  36 --
 .../libs/sling-cms/components/pages/base/nav.jsp   |  29 --
 .../sling-cms/components/pages/base/scripts.jsp    |  20 --
 .../libs/sling-cms/components/pages/editor.json    |   5 -
 .../sling-cms/components/pages/editor/body.jsp     |  23 --
 .../libs/sling-cms/components/pages/error.json     |   5 -
 .../libs/sling-cms/components/pages/error/nav.jsp  |  30 --
 .../rewriter/reference-mapping-rewriter.json       |  38 --
 .../resources/jcr_root/libs/sling-cms/content.json |   3 -
 .../libs/sling-cms/content/admin/bulkreplace.json  |  66 ----
 .../libs/sling-cms/content/admin/loadcontent.json  |  55 ---
 .../libs/sling-cms/content/config/create.json      |  66 ----
 .../libs/sling-cms/content/config/edit.json        |  27 --
 .../libs/sling-cms/content/config/list.json        | 159 ---------
 .../libs/sling-cms/content/config/metadata.json    |  34 --
 .../jcr_root/libs/sling-cms/content/content.json   |   3 -
 .../libs/sling-cms/content/editor/add.json         |  39 --
 .../libs/sling-cms/content/editor/delete.json      |  32 --
 .../libs/sling-cms/content/editor/edit.json        |  16 -
 .../libs/sling-cms/content/editor/reorder.json     |  31 --
 .../jcr_root/libs/sling-cms/content/file/edit.json |  21 --
 .../libs/sling-cms/content/file/upload.json        |  39 --
 .../libs/sling-cms/content/folder/create.json      |  59 ---
 .../libs/sling-cms/content/folder/edit.json        |  34 --
 .../libs/sling-cms/content/i18n/dictionaries.json  |  96 -----
 .../libs/sling-cms/content/i18n/dictionary.json    |  85 -----
 .../libs/sling-cms/content/i18n/entry/create.json  |  54 ---
 .../sling-cms/content/i18n/language/create.json    |  80 -----
 .../libs/sling-cms/content/i18n/language/edit.json |  41 ---
 .../libs/sling-cms/content/mappings/create.json    |  82 -----
 .../libs/sling-cms/content/mappings/edit.json      |  60 ----
 .../libs/sling-cms/content/mappings/list.json      | 153 --------
 .../libs/sling-cms/content/page/create.json        |  38 --
 .../jcr_root/libs/sling-cms/content/page/edit.json |  54 ---
 .../sling-cms/content/page/editproperties.json     |  16 -
 .../libs/sling-cms/content/page/pagewrapper.json   |   4 -
 .../libs/sling-cms/content/shared/delete.json      |  44 ---
 .../libs/sling-cms/content/shared/movecopy.json    |  63 ----
 .../libs/sling-cms/content/shared/publish.json     |  43 ---
 .../libs/sling-cms/content/shared/unpublish.json   |  43 ---
 .../libs/sling-cms/content/shared/versions.json    |  21 --
 .../libs/sling-cms/content/site/content.json       | 323 -----------------
 .../libs/sling-cms/content/site/create.json        |  78 ----
 .../libs/sling-cms/content/site/creategroup.json   |  69 ----
 .../jcr_root/libs/sling-cms/content/site/edit.json |  65 ----
 .../libs/sling-cms/content/site/editgroup.json     |  45 ---
 .../libs/sling-cms/content/site/sites.json         | 156 --------
 .../libs/sling-cms/content/siteconfig/editor.json  |  94 -----
 .../jcr_root/libs/sling-cms/content/start.json     |  99 ------
 .../libs/sling-cms/content/static/content.json     | 253 -------------
 .../libs/sling-cms/content/taxonomy/create.json    |  52 ---
 .../libs/sling-cms/content/taxonomy/edit.json      |  33 --
 .../libs/sling-cms/content/taxonomy/list.json      | 102 ------
 .../libs/sling-cms/content/template/create.json    |  59 ---
 .../libs/sling-cms/content/template/edit.json      |  21 --
 .../resources/jcr_root/libs/sling-cms/global.jsp   |  24 --
 ...riter.ReferenceMappingTransformerFactory.config |  20 --
 ....sling.engine.impl.auth.SlingAuthenticator.json |  13 -
 ...hitelist.fragment-serviceuser-webconsole.config |  20 --
 ....internal.JcrResourceResolverFactoryImpl.config |  39 --
 .../libs/sling/servlet/errorhandler/Throwable.jsp  |  19 -
 .../libs/sling/servlet/errorhandler/default.jsp    |  19 -
 .../jcr_root/oak%3Aindex/ntBaseLucene.json         |  40 ---
 .../resources/jcr_root/oak%3Aindex/published.json  |   9 -
 .../jcr_root/oak%3Aindex/slingAssetLucene.json     |  57 ---
 .../jcr_root/oak%3Aindex/slingPageLucene.json      |  82 -----
 .../oak%3Aindex/slingResourceSuperType.json        |   9 -
 .../jcr_root/oak%3Aindex/slingTaxonomy.json        |  31 --
 .../jcr_root/oak%3Aindex/slingTemplate.json        |   9 -
 file-optim/.gitignore                              |  17 -
 file-optim/LICENSE                                 | 202 -----------
 file-optim/NOTICE                                  |   8 -
 file-optim/README.md                               | 107 ------
 file-optim/pom.xml                                 | 194 ----------
 .../org/apache/sling/fileoptim/FileOptimizer.java  |  44 ---
 .../sling/fileoptim/FileOptimizerService.java      |  79 ----
 .../apache/sling/fileoptim/OptimizationResult.java | 158 --------
 .../fileoptim/impl/FileOptimizerEventHandler.java  | 102 ------
 .../fileoptim/impl/FileOptimizerServiceImpl.java   | 275 --------------
 .../fileoptim/impl/FileOptimizerWebConsole.java    |  96 -----
 .../fileoptim/impl/OptimizeFileOperation.java      |  98 -----
 .../fileoptim/impl/RestoreOriginalOperation.java   | 110 ------
 .../impl/filters/FileOptimizerFilter.java          | 109 ------
 .../fileoptim/impl/servlets/FileOptimizerData.java |  75 ----
 .../impl/servlets/FileOptimizerPreview.java        |  67 ----
 .../sling/fileoptim/models/OptimizeResource.java   |  92 -----
 .../sling/fileoptim/models/OptimizedFile.java      |  76 ----
 .../fileoptim/optimizers/JpegFileOptimizer.java    |  90 -----
 .../fileoptim/optimizers/PngFileOptimizer.java     |  63 ----
 .../sling/fileoptim/optimizers/package-info.java   |  18 -
 .../org/apache/sling/fileoptim/package-info.java   |  18 -
 .../main/resources/OSGI-INF/l10n/bundle.properties |  64 ----
 .../resources/SLING-INF/nodetypes/nodetypes.cnd    |  33 --
 .../sling/fileoptim/BaseFileOptimizerTest.java     | 156 --------
 .../sling/fileoptim/impl/TestFileOptimizer.java    |  77 ----
 .../impl/servlets/TestFileOptimizerData.java       |  85 -----
 .../fileoptim/optimizers/TestJPGFileOptimizer.java |  76 ----
 .../fileoptim/optimizers/TestPngFileOptimizer.java |  53 ---
 .../Screen Shot 2018-05-29 at 4.17.20 PM.png       | Bin 455695 -> 0 bytes
 .../src/test/resources/simplelogger.properties     |  19 -
 .../resources/valentino-funghi-41239-unsplash.jpg  | Bin 5165767 -> 0 bytes
 363 files changed, 18652 deletions(-)

diff --git a/cms/.gitignore b/cms/.gitignore
deleted file mode 100644
index adb5a08..0000000
--- a/cms/.gitignore
+++ /dev/null
@@ -1,16 +0,0 @@
-*.jar
-.metadata
-RemoteSystemsTempFiles
-target
-.grunt
-.idea
-.classpath
-.project
-.settings
-bin
-.vlt
-.DS_Store
-.vlt-sync-config.properties
-.vlt-sync.log
-.brackets.json
-.metadata/
\ No newline at end of file
diff --git a/cms/README.md b/cms/README.md
deleted file mode 100644
index 835b701..0000000
--- a/cms/README.md
+++ /dev/null
@@ -1,19 +0,0 @@
-# Apache Sling CMS
-
-A reference implementation of a simple Content Management System built in Apache Sling.
-
-## Build
-
-Build an instance with of the Sling CMS
-
-    mvn clean install
-    
-The JAR will be located under: `builder/target/org.apache.sling.cms-{VERSION].jar`
-
-## Running
-
-To run the Sling CMS, build the code and copy the files `builder/src/main/scripts/start.sh` `builder/src/main/scripts/stop.sh` and `builder/target/org.apache.sling.cms-{VERSION].jar` to a directory. Execute the script `./start.sh` to start Sling CMS.
-
-## Login
-
-Navigate to [http://localhost:8080/](http://localhost:8080/). The default credentials are *admin*/*admin*.
diff --git a/cms/builder/pom.xml b/cms/builder/pom.xml
deleted file mode 100644
index a930e5d..0000000
--- a/cms/builder/pom.xml
+++ /dev/null
@@ -1,167 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-    <!--
-        Licensed to the Apache Software Foundation (ASF) under one or more contributor license
-        agreements. See the NOTICE file distributed with this work for additional information
-        regarding copyright ownership. The ASF licenses this file to you under the Apache License,
-        Version 2.0 (the "License"); you may not use this file except in compliance with the
-        License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
-        Unless required by applicable law or agreed to in writing, software distributed under the
-        License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
-        either express or implied. See the License for the specific language governing permissions
-        and limitations under the License.
-    -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <artifactId>org.apache.sling.cms</artifactId>
-        <groupId>org.apache.sling</groupId>
-        <version>1.0.0-SNAPSHOT</version>
-    </parent>
-
-    <artifactId>org.apache.sling.cms.builder</artifactId>
-    <packaging>slingstart</packaging>
-    <version>1.0.0-SNAPSHOT</version>
-
-    <name>Apache Sling - CMS Application Builder</name>
-
-    <properties>
-        <sling.java.version>8</sling.java.version>
-        <IT.expected.bundles.count>125</IT.expected.bundles.count>
-    </properties>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>ianal-maven-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>verify-legal-files</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-            <plugin>
-                <artifactId>maven-clean-plugin</artifactId>
-                <configuration>
-                    <filesets>
-                        <fileset>
-                            <directory>${basedir}</directory>
-                            <includes>
-                                <include>derby.log</include>
-                                <include>cachedir/**</include>
-                                <include>sling/**</include>
-                                <include>jackrabbit/**</include>
-                                <include>coverage.ec</include>
-                            </includes>
-                        </fileset>
-                    </filesets>
-                </configuration>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.sling</groupId>
-                <artifactId>slingstart-maven-plugin</artifactId>
-                <version>1.7.0</version>
-                <extensions>true</extensions>
-                <executions>
-                    <execution>
-                         <id>start-container</id>
-                        <goals>
-                            <goal>start</goal>
-                            <goal>stop</goal>
-                        </goals>
-                    </execution>
-                </executions>                
-                <configuration>
-                	<verbose>true</verbose>
-                    <createWebapp>false</createWebapp>
-                    <servers>
-                        <server>
-                            <port>${http.port}</port>
-                            <controlPort>${sling.control.port}</controlPort>
-                        </server>
-                    </servers>                    
-                </configuration>
-            </plugin>
-
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>build-helper-maven-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <id>reserve-network-port</id>
-                        <goals>
-                            <!-- pre-integration-test is too late -->
-                            <goal>reserve-network-port</goal>
-                        </goals>
-                        <phase>process-resources</phase>
-                        <configuration>
-                            <portNames>
-                                <portName>http.port</portName>
-                                <portName>sling.control.port</portName>
-                            </portNames>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-
-            <plugin>
-                <artifactId>maven-failsafe-plugin</artifactId>
-                <executions>
-                    <execution>
-                        <goals>
-                            <goal>integration-test</goal>
-                            <goal>verify</goal>
-                        </goals>
-                    </execution>
-                </executions>
-                <configuration>
-                    <systemPropertyVariables>
-                        <launchpad.http.port>${http.port}</launchpad.http.port>
-                        <IT.expected.bundles.count>${IT.expected.bundles.count}</IT.expected.bundles.count>
-                    </systemPropertyVariables>
-                </configuration>
-            </plugin>            
-        </plugins>
-
-        <pluginManagement>
-            <plugins>
-                <plugin>
-                    <!-- Extend RAT configuration from parent pom -->
-                    <groupId>org.apache.rat</groupId>
-                    <artifactId>apache-rat-plugin</artifactId>
-                    <configuration>
-                        <excludes combine.children="append">
-                            <!-- Exclude sling instance -->
-                            <exclude>sling/**</exclude>
-                        </excludes>
-                    </configuration>
-                </plugin>
-            </plugins>
-        </pluginManagement>
-
-    </build>
-    
-    <dependencies>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.httpcomponents</groupId>
-            <artifactId>httpclient</artifactId>
-            <version>4.5.2</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.felix</groupId>
-            <artifactId>org.apache.felix.utils</artifactId>
-            <version>1.9.0</version>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-</project>
-
diff --git a/cms/builder/src/main/provisioning/boot.txt b/cms/builder/src/main/provisioning/boot.txt
deleted file mode 100644
index b132164..0000000
--- a/cms/builder/src/main/provisioning/boot.txt
+++ /dev/null
@@ -1,54 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-# The :boot feature contains all things to bootstrap the installation.
-#
-[feature name=:boot]
-
-# additional entries for sling.properties
-# ---------------------------------------
-# oak_tar and oak_mongo run modes are mutually exclusive,
-# and cannot be changed after the first startup
-[settings]
-    sling.run.mode.install.options=oak_tar,oak_mongo
-    repository.home=${sling.home}/repository
-    localIndexDir=${sling.home}/repository/index
-
-[variables]
-    slf4j.version=1.7.25
-
-[artifacts]
-    org.slf4j/slf4j-api/${slf4j.version}
-    org.apache.sling/org.apache.sling.commons.log/5.1.6
-    org.apache.sling/org.apache.sling.commons.logservice/1.0.6
-    org.slf4j/jcl-over-slf4j/${slf4j.version}
-    org.slf4j/log4j-over-slf4j/${slf4j.version}
-    org.apache.sling/org.apache.sling.settings/1.3.8
-    org.apache.sling/org.apache.sling.fragment.xml/1.0.2
-    org.apache.sling/org.apache.sling.fragment.transaction/1.0.0
-    org.apache.sling/org.apache.sling.javax.activation/0.1.0
-    org.apache.sling/org.apache.sling.fragment.ws/1.0.2
-    org.apache.sling/org.apache.sling.launchpad.installer/1.2.2
-    org.apache.sling/org.apache.sling.installer.core/3.8.12
-    org.apache.sling/org.apache.sling.installer.provider.file/1.1.0
-    org.apache.sling/org.apache.sling.installer.factory.configuration/1.1.2
-    org.apache.felix/org.apache.felix.configadmin/1.9.0
-    org.apache.felix/org.apache.felix.eventadmin/1.5.0
-    org.apache.aries/org.apache.aries.util/1.1.3
-    # dependency with javax.inject - required for Sling Models (SLING-4710)
-    org.apache.geronimo.specs/geronimo-atinject_1.0_spec/1.0
diff --git a/cms/builder/src/main/provisioning/cms.txt b/cms/builder/src/main/provisioning/cms.txt
deleted file mode 100644
index ca71f22..0000000
--- a/cms/builder/src/main/provisioning/cms.txt
+++ /dev/null
@@ -1,40 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-[feature name=cms]
-[variables]
-    cms.version=1.0.0
-
-[artifacts startLevel=20]
-	org.apache.cocoon/cocoon-serializers-charsets/1.0.0
-    org.apache.sling/org.apache.sling.resourcemerger/1.3.6
-    org.apache.sling/org.apache.sling.cms.core/1.0.0-SNAPSHOT
-    org.apache.sling/org.apache.sling.cms.ui/1.0.0-SNAPSHOT
-    org.apache.sling/org.apache.sling.cms.reference/1.0.0-SNAPSHOT
-    
-[:repoinit]
-    create service user sling-rewriter
-    
-    set ACL for sling-rewriter
-        allow   jcr:read    on /
-    end
-
-[configurations]
-    org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-sling.rewriter
-        user.mapping=[
-            "org.apache.sling.rewriter\=sling-rewriter"
-        ]
\ No newline at end of file
diff --git a/cms/builder/src/main/provisioning/composum.txt b/cms/builder/src/main/provisioning/composum.txt
deleted file mode 100644
index 334eb68..0000000
--- a/cms/builder/src/main/provisioning/composum.txt
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-[feature name=composum-console]
-[variables]
-    composum.version=1.8.3
-
-[artifacts startLevel=20]
-
-  com.composum.sling.core/composum-sling-core-commons/${composum.version}
-  com.composum.sling.core/composum-sling-core-config/${composum.version}
-  com.composum.sling.core/composum-sling-core-console/${composum.version}
-  com.composum.sling.core/composum-sling-core-jslibs/${composum.version}
-  com.composum.sling.core/composum-sling-user-management/${composum.version}
-  com.composum.sling.core/composum-sling-package-manager/${composum.version}
-  org.apache.jackrabbit.vault/org.apache.jackrabbit.vault/3.1.42
diff --git a/cms/builder/src/main/provisioning/launchpad.txt b/cms/builder/src/main/provisioning/launchpad.txt
deleted file mode 100644
index da37efd..0000000
--- a/cms/builder/src/main/provisioning/launchpad.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-# The :launchpad feature defines Sling's launchpad version
-# Only a single artifact is allowed within this feature.
-#
-[feature name=:launchpad]
-    org.apache.sling/org.apache.sling.launchpad.base/5.6.10-2.6.26
diff --git a/cms/builder/src/main/provisioning/oak.txt b/cms/builder/src/main/provisioning/oak.txt
deleted file mode 100644
index 5d2675c..0000000
--- a/cms/builder/src/main/provisioning/oak.txt
+++ /dev/null
@@ -1,91 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-# This is the OAK feature.
-[feature name=oak]
-
-[variables]
-    oak.version=1.6.8
-
-# The segment node store is used via a configuration
-[artifacts startLevel=10]
-    org.apache.felix/org.apache.felix.jaas/1.0.2
-
-[artifacts startLevel=15]
-    org.apache.jackrabbit/oak-core/${oak.version}
-    org.apache.jackrabbit/oak-commons/${oak.version}
-    org.apache.jackrabbit/oak-lucene/${oak.version}
-    org.apache.jackrabbit/oak-blob/${oak.version}
-    org.apache.jackrabbit/oak-jcr/${oak.version}
-
-[artifacts startLevel=15 runModes=oak_tar]
-    org.apache.jackrabbit/oak-segment-tar/${oak.version}
-
-[artifacts startLevel=15 runModes=oak_mongo]
-    org.mongodb/mongo-java-driver/3.4.1
-    com.h2database/h2-mvstore/1.4.196
-
-# start the Oak server instance after all components have been configured
-# and started to avoid restarting that component ( see SLING-4556 )
-[artifacts startLevel=16]
-    org.apache.sling/org.apache.sling.jcr.oak.server/1.1.4
-
-[configurations]
-  org.apache.felix.jaas.Configuration.factory-GuestLoginModule
-    jaas.controlFlag="optional"
-    jaas.classname="org.apache.jackrabbit.oak.spi.security.authentication.GuestLoginModule"
-    jaas.ranking=I"300"
-
-  org.apache.felix.jaas.Configuration.factory-LoginModuleImpl
-    jaas.controlFlag="required"
-    jaas.classname="org.apache.jackrabbit.oak.security.authentication.user.LoginModuleImpl"
-
-  org.apache.felix.jaas.Configuration.factory-TokenLoginModule
-    jaas.controlFlag="sufficient"
-    jaas.classname="org.apache.jackrabbit.oak.security.authentication.token.TokenLoginModule"
-    jaas.ranking=I"200"
-
-  org.apache.felix.jaas.ConfigurationSpi
-    jaas.defaultRealmName="jackrabbit.oak"
-    jaas.configProviderName="FelixJaasProvider"
-
-  org.apache.jackrabbit.oak.security.authentication.AuthenticationConfigurationImpl
-    org.apache.jackrabbit.oak.authentication.configSpiName="FelixJaasProvider"
-
-  org.apache.jackrabbit.oak.security.user.UserConfigurationImpl
-    groupsPath="/home/groups"
-    usersPath="/home/users"
-    defaultDepth="1"
-    importBehavior="besteffort"
-
-  org.apache.jackrabbit.oak.security.user.RandomAuthorizableNodeName
-    length=I"21"
-
-  org.apache.jackrabbit.oak.spi.security.user.action.DefaultAuthorizableActionProvider
-    enabledActions=["org.apache.jackrabbit.oak.spi.security.user.action.AccessControlAction"]
-    userPrivilegeNames=["jcr:all"]
-    groupPrivilegeNames=["jcr:read"]
-
-[configurations runModes=oak_tar]
-  org.apache.jackrabbit.oak.segment.SegmentNodeStoreService
-    name="Default\ NodeStore"
-
-[configurations runModes=oak_mongo]
-  org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreService
-    mongouri="mongodb://localhost:27017"
-    db="sling"
diff --git a/cms/builder/src/main/provisioning/repoinit.txt b/cms/builder/src/main/provisioning/repoinit.txt
deleted file mode 100644
index 0308aae..0000000
--- a/cms/builder/src/main/provisioning/repoinit.txt
+++ /dev/null
@@ -1,98 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-[feature name=repoinit]
-
-[artifacts]
-  org.apache.sling/org.apache.sling.repoinit.parser/1.2.0
-  org.apache.sling/org.apache.sling.jcr.repoinit/1.1.6
-  org.apache.sling/org.apache.sling.provisioning.model/1.8.4
-
-[:repoinit]
-    # general
-    create path (sling:OrderedFolder) /conf
-    set ACL for everyone
-        allow   jcr:read	on /conf
-    end
-    
-    create path (sling:OrderedFolder) /content
-    set ACL for everyone
-        allow   jcr:read	on /content
-    end
-    
-    create path (sling:OrderedFolder) /etc/i18n
-    set ACL for everyone
-        allow   jcr:read	on /etc/i18n
-    end
-    
-    create path (sling:OrderedFolder) /etc/taxonomy
-    set ACL for everyone
-        allow   jcr:read	on /etc/taxonomy
-    end
-    
-    create path (sling:OrderedFolder) /static
-    set ACL for everyone
-        allow   jcr:read	on /static
-    end
-
-    # sling-mapping
-    create service user sling-mapping
-
-    set ACL for sling-mapping
-        allow   jcr:read    on /
-    end
-
-    # sling-readall
-    create service user sling-readall
-
-    set ACL for sling-readall
-        allow   jcr:read    on /
-    end
-
-    # sling-xss
-    create service user sling-xss
-
-    create path (sling:Folder) /libs/sling/xss
-    create path (sling:Folder) /apps/sling/xss
-
-    set ACL for sling-xss
-        deny    jcr:all     on /
-        allow   jcr:read    on /libs/sling/xss,/apps/sling/xss
-    end
-
-    # sling-i18n
-    create service user sling-i18n
-
-    set ACL for sling-i18n
-        allow   jcr:read    on /
-    end
-
-    # sling-jcr-install
-    create service user sling-jcr-install
-
-    # used for config OSGi writeback
-    create path (sling:Folder) /apps/sling/install
-
-    set ACL for sling-jcr-install
-        allow	jcr:read	on	/
-        allow	rep:write	on /apps/sling/install
-    end
-
-[configurations]
-  org.apache.sling.jcr.repoinit.impl.RepositoryInitializer
-    references="model@repoinit:context:/resources/provisioning/model.txt"
diff --git a/cms/builder/src/main/provisioning/scripting.txt b/cms/builder/src/main/provisioning/scripting.txt
deleted file mode 100644
index 1945358..0000000
--- a/cms/builder/src/main/provisioning/scripting.txt
+++ /dev/null
@@ -1,61 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-#
-[feature name=sling]
-
-[artifacts]
-    org.apache.sling/org.apache.sling.scripting.api/2.2.0
-    org.apache.sling/org.apache.sling.scripting.core/2.0.54
-    org.apache.sling/org.apache.sling.scripting.javascript/3.0.4
-    org.apache.sling/org.apache.sling.scripting.jsp/2.3.4
-    org.apache.sling/org.apache.sling.scripting.jsp-api/1.0.0
-    org.apache.sling/org.apache.sling.scripting.el-api/1.0.0
-    org.apache.sling/org.apache.sling.scripting.jsp.taglib/2.3.0
-    org.apache.sling/org.apache.sling.scripting.sightly/1.0.46
-    org.apache.sling/org.apache.sling.scripting.sightly.compiler/1.0.16
-    org.apache.sling/org.apache.sling.scripting.sightly.compiler.java/1.0.18
-    org.apache.sling/org.apache.sling.scripting.sightly.js.provider/1.0.26
-    org.apache.sling/org.apache.sling.scripting.sightly.models.provider/1.0.6
-    org.apache.sling/org.apache.sling.scripting.sightly.repl/1.0.4
-    org.apache.servicemix.bundles/org.apache.servicemix.bundles.rhino/1.7.7.2_1
-
-[:repoinit]
-    #<<< SLING-5848 - Define service user and ACLs for Scripting
-    create service user sling-scripting
-
-    create path (sling:Folder) /libs
-    create path (sling:Folder) /apps
-
-    set ACL for sling-scripting
-        deny    jcr:all     on /
-        allow   jcr:read    on /libs,/apps
-    end
-    # SLING-5848 - Define service user and ACLs for Scripting >>>
-
-
-[configurations]
-    # configure the ScriptCache for scripts used by org.apache.sling.scripting.sightly.js.provider
-    org.apache.sling.scripting.core.impl.ScriptCacheImpl
-        org.apache.sling.scripting.cache.additional_extensions=["js"]
-
-    org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-scripting
-        user.mapping=[
-            "org.apache.sling.scripting.core\=sling-scripting",
-            "org.apache.sling.scripting.sightly.js.provider\=sling-scripting",
-        ]
diff --git a/cms/builder/src/main/provisioning/sling-caconfig.txt b/cms/builder/src/main/provisioning/sling-caconfig.txt
deleted file mode 100644
index 95ed2ca..0000000
--- a/cms/builder/src/main/provisioning/sling-caconfig.txt
+++ /dev/null
@@ -1,34 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-#
-[feature name=sling-validation]
-
-[artifacts]
-    org.apache.sling/org.apache.sling.caconfig.api/1.1.0
-    org.apache.sling/org.apache.sling.caconfig.spi/1.3.2
-    org.apache.sling/org.apache.sling.caconfig.impl/1.4.10
-
-[:repoinit]
-    create path (sling:Folder) /conf
-
-[configurations]
-    org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-sling-caconfig
-        user.mapping=[
-            "org.apache.sling.caconfig.impl\=sling-readall"
-        ]
diff --git a/cms/builder/src/main/provisioning/sling-discovery.txt b/cms/builder/src/main/provisioning/sling-discovery.txt
deleted file mode 100644
index 6ea7477..0000000
--- a/cms/builder/src/main/provisioning/sling-discovery.txt
+++ /dev/null
@@ -1,46 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-#
-[feature name=sling-event]
-
-[artifacts]
-    org.apache.sling/org.apache.sling.discovery.api/1.0.4
-    org.apache.sling/org.apache.sling.discovery.support/1.0.4
-    org.apache.sling/org.apache.sling.discovery.commons/1.0.20
-    org.apache.sling/org.apache.sling.discovery.base/2.0.8
-    org.apache.sling/org.apache.sling.discovery.oak/1.2.22
-
-[:repoinit]
-    create service user sling-discovery
-
-    create path (sling:Folder) /var/discovery
-    create path (sling:Folder) /var/discovery/oak
-
-    set ACL for sling-discovery
-        allow   jcr:read,rep:write    on /var/discovery
-    end
-
-
-[configurations]
-    org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-sling.discovery
-        user.mapping=[
-            "org.apache.sling.discovery.commons\=sling-discovery",
-            "org.apache.sling.discovery.base\=sling-discovery",
-            "org.apache.sling.discovery.oak\=sling-discovery"
-        ]
diff --git a/cms/builder/src/main/provisioning/sling-event.txt b/cms/builder/src/main/provisioning/sling-event.txt
deleted file mode 100644
index 5e69955..0000000
--- a/cms/builder/src/main/provisioning/sling-event.txt
+++ /dev/null
@@ -1,42 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-#
-[feature name=sling-event]
-
-[artifacts]
-    org.apache.sling/org.apache.sling.event/4.2.10
-    org.apache.sling/org.apache.sling.event.dea/1.1.2
-
-[:repoinit]
-    create service user sling-event
-
-    create path (sling:Folder) /var
-    create path (sling:Folder) /var/eventing
-
-    set ACL for sling-event
-        allow   jcr:read,rep:write    on /var/eventing
-    end
-
-
-[configurations]
-    org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-sling.event
-        user.mapping=[
-            "org.apache.sling.event\=sling-event",
-            "org.apache.sling.event.dea\=sling-event"
-        ]
\ No newline at end of file
diff --git a/cms/builder/src/main/provisioning/sling-models-jacksonexporter.txt b/cms/builder/src/main/provisioning/sling-models-jacksonexporter.txt
deleted file mode 100644
index d544940..0000000
--- a/cms/builder/src/main/provisioning/sling-models-jacksonexporter.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-[feature name=models-jacksonexporter]
-
-[artifacts]
-  org.apache.sling/org.apache.sling.models.jacksonexporter/1.0.8
-  com.fasterxml.jackson.core/jackson-annotations/2.9.3
-  com.fasterxml.jackson.core/jackson-core/2.9.3
-  com.fasterxml.jackson.core/jackson-databind/2.9.3
diff --git a/cms/builder/src/main/provisioning/sling-rewriter.txt b/cms/builder/src/main/provisioning/sling-rewriter.txt
deleted file mode 100644
index 7e2bd69..0000000
--- a/cms/builder/src/main/provisioning/sling-rewriter.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-#
-[feature name=sling-rewriter]
-
-[artifacts]
-    org.apache.sling/org.apache.sling.commons.html/1.0.0
-    org.apache.sling/org.apache.sling.rewriter/1.2.2
-
-[:repoinit]
-    create service user sling-rewriter
-
-
-    set ACL for sling-rewriter
-        allow   jcr:read    on /
-    end
-
-
-[configurations]
-    org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-sling.rewriter
-        user.mapping=[
-            "org.apache.sling.rewriter\=sling-rewriter"
-        ]
\ No newline at end of file
diff --git a/cms/builder/src/main/provisioning/sling-validation.txt b/cms/builder/src/main/provisioning/sling-validation.txt
deleted file mode 100644
index 3635ee1..0000000
--- a/cms/builder/src/main/provisioning/sling-validation.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-#
-[feature name=sling-validation]
-
-[artifacts]
-    org.apache.sling/org.apache.sling.validation.api/1.0.0
-    org.apache.sling/org.apache.sling.validation.core/1.0.4
-
-[:repoinit]
-    create service user sling-validation
-
-    create path (sling:Folder) /apps
-    create path (sling:Folder) /libs
-
-    set ACL for sling-validation
-        allow   jcr:read    on /apps
-        allow   jcr:read    on /libs
-    end
-
-[configurations]
-    org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-validation
-        user.mapping=[
-            "org.apache.sling.validation.core\=sling-validation"
-        ]
diff --git a/cms/builder/src/main/provisioning/sling.txt b/cms/builder/src/main/provisioning/sling.txt
deleted file mode 100644
index cd8c9a9..0000000
--- a/cms/builder/src/main/provisioning/sling.txt
+++ /dev/null
@@ -1,220 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-# The feature for Apache Sling
-[feature name=sling]
-
-[variables]
-    jackrabbit.version=2.14.4
-
-[artifacts]
-    commons-collections/commons-collections/3.2.2
-    org.apache.commons/commons-collections4/4.1
-    commons-codec/commons-codec/1.11
-    commons-lang/commons-lang/2.6
-    org.apache.commons/commons-lang3/3.7
-    org.apache.commons/commons-math/2.2
-    org.apache.geronimo.bundles/commons-httpclient/3.1_2
-    org.apache.httpcomponents/httpcore-osgi/4.4.9
-    org.apache.httpcomponents/httpclient-osgi/4.5.4
-    org.apache.sling/org.apache.sling.adapter/2.1.10
-    org.apache.sling/org.apache.sling.api/2.18.0
-    org.apache.sling/org.apache.sling.auth.core/1.4.2
-    org.apache.sling/org.apache.sling.auth.form/1.0.10
-    org.apache.sling/org.apache.sling.bundleresource.impl/2.3.0
-    org.apache.sling/org.apache.sling.commons.classloader/1.4.2
-    org.apache.sling/org.apache.sling.commons.compiler/2.3.6
-    org.apache.sling/org.apache.sling.commons.fsclassloader/1.0.8
-    org.apache.sling/org.apache.sling.commons.mime/2.1.10
-    org.apache.sling/org.apache.sling.commons.osgi/2.4.0
-    org.apache.sling/org.apache.sling.commons.scheduler/2.7.2
-    org.apache.sling/org.apache.sling.commons.threads/3.2.16
-    org.apache.sling/org.apache.sling.engine/2.6.12
-    org.apache.sling/org.apache.sling.fsresource/2.1.10
-    org.apache.sling/org.apache.sling.hc.api/1.0.2
-    org.apache.sling/org.apache.sling.hc.core/1.2.10
-    org.apache.sling/org.apache.sling.hc.webconsole/1.1.2
-    org.apache.sling/org.apache.sling.i18n/2.5.12
-    org.apache.sling/org.apache.sling.installer.console/1.0.2
-    org.apache.sling/org.apache.sling.installer.provider.jcr/3.1.26
-    org.apache.sling/org.apache.sling.installer.hc/2.0.0
-    org.apache.sling/org.apache.sling.jcr.contentloader/2.2.4
-    org.apache.sling/org.apache.sling.jcr.resource/3.0.10
-    org.apache.sling/org.apache.sling.models.api/1.3.6
-    org.apache.sling/org.apache.sling.models.impl/1.4.6
-    org.apache.sling/org.apache.sling.resourceresolver/1.6.0
-    org.apache.sling/org.apache.sling.serviceusermapper/1.4.0
-    org.apache.sling/org.apache.sling.serviceuser.webconsole/1.0.0
-    org.apache.sling/org.apache.sling.servlets.get/2.1.30
-    org.apache.sling/org.apache.sling.servlets.post/2.3.26
-    org.apache.sling/org.apache.sling.servlets.resolver/2.4.22
-    org.apache.sling/org.apache.sling.xss/2.0.4
-    javax.mail/mail/1.5.0-b01
-    org.apache.geronimo.bundles/jstl/1.2_1
-    org.apache.felix/org.apache.felix.http.whiteboard/4.0.0
-
-[artifacts startLevel=5]
-    org.apache.sling/org.apache.sling.starter.startup/1.0.6
-    org.apache.sling/org.apache.sling.extensions.webconsolebranding/1.0.2
-    org.apache.sling/org.apache.sling.extensions.webconsolesecurityprovider/1.0.0
-    org.apache.felix/org.apache.felix.inventory/1.0.6
-    org.apache.felix/org.apache.felix.prefs/1.1.0
-    org.apache.felix/org.apache.felix.webconsole/4.3.4
-    org.apache.felix/org.apache.felix.webconsole.plugins.ds/2.0.8
-    org.apache.felix/org.apache.felix.webconsole.plugins.obr/1.0.4
-    org.apache.felix/org.apache.felix.webconsole.plugins.packageadmin/1.0.4
-    org.apache.felix/org.apache.felix.webconsole.plugins.event/1.1.8
-    org.apache.felix/org.apache.felix.webconsole.plugins.memoryusage/1.0.6
-    org.apache.sling/org.apache.sling.commons.johnzon/1.1.0
-    org.apache.felix/org.apache.felix.bundlerepository/2.0.10
-    org.apache.sling/org.apache.sling.extensions.threaddump/0.2.2
-    org.apache.aries.jmx/org.apache.aries.jmx.api/1.1.5
-    org.apache.aries.jmx/org.apache.aries.jmx.core/1.1.8
-    org.apache.aries.jmx/org.apache.aries.jmx.whiteboard/1.2.0
-    commons-io/commons-io/2.6
-    commons-fileupload/commons-fileupload/1.3.3
-    org.apache.sling/org.apache.sling.commons.log.webconsole/1.0.0
-
-[artifacts startLevel=10]
-    org.apache.felix/org.apache.felix.http.sslfilter/1.2.4
-    org.apache.felix/org.apache.felix.scr/2.1.0
-    org.apache.felix/org.apache.felix.metatype/1.2.0
-    org.apache.pdfbox/pdfbox/2.0.9
-    org.apache.pdfbox/fontbox/2.0.9
-    org.apache.pdfbox/jempbox/1.8.14
-    org.apache.tika/tika-core/1.18
-    org.apache.tika/tika-parsers/1.18
-
-[artifacts startLevel=15]
-    org.apache.sling/org.apache.sling.jcr.jcr-wrapper/2.0.0
-    org.apache.sling/org.apache.sling.jcr.api/2.4.0
-    org.apache.sling/org.apache.sling.jcr.base/3.0.4
-    org.apache.sling/org.apache.sling.jcr.registration/1.0.4
-    org.apache.jackrabbit/jackrabbit-api/${jackrabbit.version}
-    org.apache.jackrabbit/jackrabbit-jcr-commons/${jackrabbit.version}
-    org.apache.jackrabbit/jackrabbit-spi/${jackrabbit.version}
-    org.apache.jackrabbit/jackrabbit-spi-commons/${jackrabbit.version}
-    org.apache.jackrabbit/jackrabbit-webdav/${jackrabbit.version}
-    org.apache.jackrabbit/jackrabbit-jcr-rmi/${jackrabbit.version}
-    org.apache.jackrabbit/jackrabbit-data/${jackrabbit.version}
-    org.apache.sling/org.apache.sling.jcr.webdav/2.3.8
-    org.apache.sling/org.apache.sling.jcr.davex/1.3.10
-    org.apache.sling/org.apache.sling.jcr.jackrabbit.usermanager/2.2.6
-    org.apache.sling/org.apache.sling.jcr.jackrabbit.accessmanager/3.0.0
-    org.apache.sling/org.apache.sling.jcr.webconsole/1.0.2
-    io.dropwizard.metrics/metrics-core/3.2.6
-    org.apache.sling/org.apache.sling.commons.metrics/1.2.4
-    com.google.guava/guava/15.0
-
-[configurations]
-  org.apache.sling.engine.impl.log.RequestLogger
-    access.log.enabled=B"true"
-    request.log.outputtype=I"0"
-    access.log.output="log.access"
-    request.log.output="log.request"
-    request.log.enabled=B"true"
-    access.log.outputtype=I"0"
-
-  org.apache.sling.commons.log.LogManager
-    org.apache.sling.commons.log.pattern="%d{dd.MM.yyyy HH:mm:ss.SSS}\ *%level*\ [%thread]\ %logger\ %msg%n"
-    org.apache.sling.commons.log.file="logs/error.log"
-    org.apache.sling.commons.log.level="info"
-    org.apache.sling.commons.log.file.size="'.'yyyy-MM-dd"
-    org.apache.sling.commons.log.file.number=I"7"
-    org.apache.sling.commons.log.packagingDataEnabled=B"true"
-
-  org.apache.sling.commons.log.LogManager.factory.config-access.log
-    org.apache.sling.commons.log.pattern="%msg%n"
-    org.apache.sling.commons.log.names=["log.access"]
-    org.apache.sling.commons.log.file="logs/access.log"
-    org.apache.sling.commons.log.level="info"
-
-  org.apache.sling.commons.log.LogManager.factory.config-request.log
-    org.apache.sling.commons.log.pattern="%msg%n"
-    org.apache.sling.commons.log.names=["log.request"]
-    org.apache.sling.commons.log.file="logs/request.log"
-    org.apache.sling.commons.log.level="info"
-
-  # TODO: remove bundles as their dependency on admin login is fixed, see SLING-5355 for linked issues
-  # For these bundles, admin login is considered "ok":
-  # org.apache.sling.jcr.contentloader
-  org.apache.sling.jcr.base.internal.LoginAdminWhitelist.fragment-sling
-    whitelist.name="sling"
-    whitelist.bundles=[
-      "org.apache.sling.discovery.commons",\
-      "org.apache.sling.discovery.base",\
-      "org.apache.sling.discovery.oak",\
-      "org.apache.sling.extensions.webconsolesecurityprovider",\
-      "org.apache.sling.i18n",\
-      "org.apache.sling.jcr.base",\
-      "org.apache.sling.jcr.contentloader",\
-      "org.apache.sling.jcr.jackrabbit.usermanager",\
-      "org.apache.sling.jcr.oak.server",\
-      "org.apache.sling.jcr.repoinit",\
-      "org.apache.sling.jcr.webconsole",\
-      "org.apache.sling.servlets.post",\
-      "org.apache.sling.serviceuser.webconsole"
-    ]
-
-  # WebDAV servlet requires config now
-  org.apache.sling.jcr.webdav.impl.servlets.SimpleWebDavServlet
-    dav.root="/dav"
-
-  # DavEx servlet requires config now
-  org.apache.sling.jcr.davex.impl.servlets.SlingDavExServlet
-      alias="/server"
-
-  org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-resourceresolver
-    user.mapping=[
-      "org.apache.sling.resourceresolver:mapping\=sling-mapping",
-      "org.apache.sling.resourceresolver:hierarchy\=sling-readall",
-      "org.apache.sling.resourceresolver:observation\=sling-readall",
-      "org.apache.sling.resourceresolver:console\=sling-readall"
-    ]
-
-  # the user mapping for the servlet resolver, subservice "console" namely the user sling-scripting is created in scripting.txt
-  org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-servletsresolver
-    user.mapping=[
-      "org.apache.sling.servlets.resolver:console\=sling-readall",
-      "org.apache.sling.servlets.resolver:scripts\=sling-scripting"
-    ]
-
-  org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-observation
-    user.mapping=[
-      "org.apache.sling.jcr.resource:observation\=sling-readall"
-    ]
-
-  org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-xss
-    user.mapping=[
-      "org.apache.sling.xss\=sling-xss"
-    ]
-
-  org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-i18n
-    user.mapping=[
-      "org.apache.sling.i18n\=sling-i18n"
-    ]
-
-  org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-jcr-install
-    user.mapping=[
-      "org.apache.sling.installer.provider.jcr\=sling-jcr-install"
-    ]
-
-  org.apache.sling.serviceusermapping.impl.ServiceUserMapperImpl.amended-jcr-resource
-    user.mapping=[
-      "org.apache.sling.jcr.resource:validation\=sling-readall"
-    ]
diff --git a/cms/builder/src/main/provisioning/standalone.txt b/cms/builder/src/main/provisioning/standalone.txt
deleted file mode 100644
index 90459a2..0000000
--- a/cms/builder/src/main/provisioning/standalone.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-# The :standalone feature contains artifacts for the standalone jar
-#
-[feature name=standalone]
-
-# Add a servlet implementation for the standalone case
-[artifacts startLevel=5 runModes=:standalone]
-    org.apache.felix/org.apache.felix.http.servlet-api/1.1.2
-    org.apache.felix/org.apache.felix.http.jetty/4.0.0
diff --git a/cms/builder/src/main/provisioning/webapp.txt b/cms/builder/src/main/provisioning/webapp.txt
deleted file mode 100644
index 9df3edd..0000000
--- a/cms/builder/src/main/provisioning/webapp.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-# The :standalone feature contains artifacts for the standalone jar
-#
-[feature name=webapp]
-
-# Add the felix servlet bridge for the webapp case
-[artifacts runModes=:webapp]
-    org.apache.felix/org.apache.felix.http.bridge/4.0.0
diff --git a/cms/builder/src/main/scripts/start.sh b/cms/builder/src/main/scripts/start.sh
deleted file mode 100755
index 6fca4b5..0000000
--- a/cms/builder/src/main/scripts/start.sh
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/bin/bash
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-# This script configures the start information for this server.
-#
-# The following variables may be used to override the defaults.
-#
-
-# port used for accessing the app
-if [ -z "$APP_PORT" ]; then
-	APP_PORT=8080
-fi
-
-# default JVM options
-if [ -z "$APP_JVM_OPTS" ]; then
-	APP_JVM_OPTS='-server -Xmx1024m -XX:MaxPermSize=256M -Djava.awt.headless=true'
-fi
-
-# debugging support
-if [ -n "${APP_DEBUG_PORT}" ]; then
-	APP_JVM_OPTS="${APP_JVM_OPTS} -agentlib:jdwp=transport=dt_socket,server=y,address=${APP_DEBUG_PORT},suspend=n"
-fi
-
-# ------------------------------------------------------------------------------
-# do not configure below this point
-# ------------------------------------------------------------------------------
-
-if [ $APP_PORT ]; then
-	START_OPTS="${START_OPTS} -p ${APP_PORT}"
-fi
-START_OPTS="${START_OPTS}"
-
-JARFILE=`ls *cms*.jar | head -1`
-mkdir -p sling/logs
-(
-  (
-    java $APP_JVM_OPTS -jar $JARFILE $START_OPTS &
-    echo $! > app.pid
-  ) >> sling/logs/stdout.log 2>&1
-) &
-echo "Application started on port ${APP_PORT}!"
\ No newline at end of file
diff --git a/cms/builder/src/main/scripts/stop.sh b/cms/builder/src/main/scripts/stop.sh
deleted file mode 100755
index 1d2ae5b..0000000
--- a/cms/builder/src/main/scripts/stop.sh
+++ /dev/null
@@ -1,46 +0,0 @@
-#!/bin/bash
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-#    http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# This script stops the (running) application
-#
-
-START_OPTS='stop -c .'
-JARFILE=`ls *cms*.jar | head -1`
-
-java -jar $JARFILE $START_OPTS
-STOP_CODE=$?
-if [ "${STOP_CODE}" == "0" ]; then
-	echo "Application not running"
-else
-	echo "Stop command returned ${STOP_CODE}. Trying to kill the process..."
-	PID=$(cat app.pid 2>/dev/null)
-	rm -f app.pid
-	if [ "$PID" ]; then
-		if ps -p $PID > /dev/null 2>&1; then
-			kill $PID
-			STOP_CODE=$?
-			echo "process ${PID} was killed"
-		else
-       		echo "process ${PID} not running"
-	       	STOP_CODE=4
-	    fi
-	else
-		echo "app.pid not found"
-		STOP_CODE=4
-	fi
-fi
-exit ${STOP_CODE}
\ No newline at end of file
diff --git a/cms/core/pom.xml b/cms/core/pom.xml
deleted file mode 100644
index e9b554c..0000000
--- a/cms/core/pom.xml
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
-	license agreements. See the NOTICE file distributed with this work for additional 
-	information regarding copyright ownership. The ASF licenses this file to 
-	you under the Apache License, Version 2.0 (the "License"); you may not use 
-	this file except in compliance with the License. You may obtain a copy of 
-	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
-	by applicable law or agreed to in writing, software distributed under the 
-	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
-	OF ANY KIND, either express or implied. See the License for the specific 
-	language governing permissions and limitations under the License. -->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<artifactId>org.apache.sling.cms</artifactId>
-		<groupId>org.apache.sling</groupId>
-		<version>1.0.0-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.apache.sling.cms.core</artifactId>
-	<packaging>bundle</packaging>
-	<name>Apache Sling - CMS Core</name>
-
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.apache.felix</groupId>
-				<artifactId>maven-bundle-plugin</artifactId>
-				<extensions>true</extensions>
-				<configuration>
-					<instructions>
-						<Sling-Model-Packages>
-							org.apache.sling.cms.core.models
-						</Sling-Model-Packages>
-					</instructions>
-				</configuration>
-			</plugin>
-			<plugin>
-				<groupId>org.apache.maven.plugins</groupId>
-				<artifactId>maven-compiler-plugin</artifactId>
-				<configuration>
-					<source>8</source>
-					<target>8</target>
-				</configuration>
-			</plugin>
-			<plugin>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>maven-sling-plugin</artifactId>
-				<configuration>
-					<slingUrl>${sling.protocol}://${sling.host}:${sling.port}/system/console</slingUrl>
-					<user>${sling.username}</user>
-					<password>${sling.password}</password>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
-
-	<profiles>
-		<profile>
-			<id>autoInstallBundle</id>
-			<build>
-				<plugins>
-					<plugin>
-						<groupId>org.apache.sling</groupId>
-						<artifactId>maven-sling-plugin</artifactId>
-						<executions>
-							<execution>
-								<id>install-bundle</id>
-								<goals>
-									<goal>install</goal>
-								</goals>
-							</execution>
-						</executions>
-					</plugin>
-				</plugins>
-			</build>
-		</profile>
-	</profiles>
-
-	<dependencies>
-		<dependency>
-			<groupId>org.apache.geronimo.specs</groupId>
-			<artifactId>geronimo-atinject_1.0_spec</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>javax.servlet</groupId>
-			<artifactId>servlet-api</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.osgi</groupId>
-			<artifactId>org.osgi.service.component.annotations</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.osgi</groupId>
-			<artifactId>org.osgi.service.metatype.annotations</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.osgi</groupId>
-			<artifactId>osgi.core</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.osgi</groupId>
-			<artifactId>osgi.cmpn</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>javax.jcr</groupId>
-			<artifactId>jcr</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.sling</groupId>
-			<artifactId>org.apache.sling.api</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.sling</groupId>
-			<artifactId>org.apache.sling.servlets.post</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.slf4j</groupId>
-			<artifactId>slf4j-api</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>junit</groupId>
-			<artifactId>junit</artifactId>
-			<scope>test</scope>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.sling</groupId>
-			<artifactId>org.apache.sling.models.api</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.jackrabbit</groupId>
-			<artifactId>jackrabbit-jcr-commons</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.sling</groupId>
-			<artifactId>org.apache.sling.jcr.resource</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>commons-lang</groupId>
-			<artifactId>commons-lang</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>commons-io</groupId>
-			<artifactId>commons-io</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.sling</groupId>
-			<artifactId>org.apache.sling.rewriter</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.cocoon</groupId>
-			<artifactId>cocoon-serializers-charsets</artifactId>
-		</dependency>
-		<dependency>
-			<artifactId>jstl</artifactId>
-			<groupId>org.apache.geronimo.bundles</groupId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.sling</groupId>
-			<artifactId>org.apache.sling.caconfig.api</artifactId>
-		</dependency>
-		<dependency>
-			<artifactId>jackrabbit-api</artifactId>
-			<groupId>org.apache.jackrabbit</groupId>
-		</dependency>
-        <dependency>
-            <groupId>org.apache.sling</groupId>
-            <artifactId>org.apache.sling.jcr.base</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.sling</groupId>
-            <artifactId>org.apache.sling.commons.johnzon</artifactId>
-            <version>1.0.0</version>
-            <scope>provided</scope>
-        </dependency>
-	</dependencies>
-</project>
\ No newline at end of file
diff --git a/cms/core/src/main/java/org/apache/sling/cms/CMSConstants.java b/cms/core/src/main/java/org/apache/sling/cms/CMSConstants.java
deleted file mode 100644
index 3a77cef..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/CMSConstants.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms;
-
-/**
- * Constants used throughout the application.
- */
-public class CMSConstants {
-
-	/**
-	 * The Request attribute for whether or not editing is enabled
-	 */
-	public static final String ATTR_EDIT_ENABLED = "cmsEditEnabled";
-
-	/**
-	 * The Component type for pages
-	 */
-	public static final String COMPONENT_TYPE_PAGE = "Page";
-
-	/**
-	 * Content path.
-	 */
-	public static final String CONTENT_PATH = "/content";
-
-	/**
-	 * Node type base.
-	 */
-	public static final String NAMESPACE = "sling";
-
-	/**
-	 * Component node type.
-	 */
-	public static final String NT_COMPONENT = NAMESPACE + ":Component";
-
-	/**
-	 * File node type
-	 */
-	public static final String NT_FILE = NAMESPACE + ":File";
-
-	/**
-	 * Page node type.
-	 */
-	public static final String NT_PAGE = NAMESPACE + ":Page";
-
-	/**
-	 * Site node type.
-	 */
-	public static final String NT_SITE = NAMESPACE + ":Site";
-
-	/**
-	 * Description attribute name
-	 */
-	public static final String PN_DESCRIPTION = "jcr:description";
-
-	/**
-	 * i18n Locale property
-	 */
-	public static final String PN_LANGUAGE = "jcr:language";
-
-	/**
-	 * Published flag property
-	 */
-	public static final String PN_PUBLISHED = "published";
-
-	/**
-	 * Taxonomy attribute name
-	 */
-	public static final String PN_TAXONOMY = NAMESPACE + ":taxonomy";
-
-	/**
-	 * Title attribute name
-	 */
-	public static final String PN_TITLE = "jcr:title";
-
-	/**
-	 * Private constructor to prevent instantiation of class.
-	 */
-	private CMSConstants() {
-	}
-
-}
\ No newline at end of file
diff --git a/cms/core/src/main/java/org/apache/sling/cms/CMSUtils.java b/cms/core/src/main/java/org/apache/sling/cms/CMSUtils.java
deleted file mode 100644
index dacce9e..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/CMSUtils.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.jackrabbit.JcrConstants;
-import org.apache.sling.api.resource.Resource;
-
-/**
- * Shared utility functions
- */
-public class CMSUtils {
-
-	public static final Resource findParentResourceofType(Resource resource, String type) {
-		if (resource != null) {
-			if (type.equals(resource.getValueMap().get(JcrConstants.JCR_PRIMARYTYPE, String.class))) {
-				return resource;
-			} else {
-				return findParentResourceofType(resource.getParent(), type);
-			}
-		}
-		return null;
-	}
-
-	public static final <T> List<T> adaptResources(Resource[] resources, Class<T> type) {
-		List<T> values = new ArrayList<T>();
-		if (resources != null) {
-			for (Resource resource : resources) {
-				values.add(resource.adaptTo(type));
-			}
-		}
-		return values;
-	}
-	
-
-	public static final <T> List<T> adaptResources(List<Resource> resources, Class<T> type) {
-		List<T> values = new ArrayList<T>();
-		if (resources != null) {
-			for (Resource resource : resources) {
-				values.add(resource.adaptTo(type));
-			}
-		}
-		return values;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/filters/CMSSecurityFilter.java b/cms/core/src/main/java/org/apache/sling/cms/core/filters/CMSSecurityFilter.java
deleted file mode 100644
index 83f1600..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/filters/CMSSecurityFilter.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.filters;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Iterator;
-import java.util.List;
-import java.util.regex.Pattern;
-
-import javax.jcr.Session;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.commons.lang.ArrayUtils;
-import org.apache.commons.lang.StringUtils;
-import org.apache.jackrabbit.api.security.user.Authorizable;
-import org.apache.jackrabbit.api.security.user.Group;
-import org.apache.jackrabbit.api.security.user.User;
-import org.apache.jackrabbit.api.security.user.UserManager;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.jcr.base.util.AccessControlUtil;
-import org.osgi.service.component.annotations.Activate;
-import org.osgi.service.component.annotations.Component;
-import org.osgi.service.component.annotations.Modified;
-import org.osgi.service.metatype.annotations.Designate;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Checks to ensure that the user is logged in for requests which otherwise
- * would be allowed when accessing through a CMS-specific domain name.
- */
-@Component(service = { Filter.class }, property = { "sling.filter.scope=request" })
-@Designate(ocd = CMSSecurityFilterConfig.class)
-public class CMSSecurityFilter implements Filter {
-
-	private static final Logger log = LoggerFactory.getLogger(CMSSecurityFilter.class);
-
-	private CMSSecurityFilterConfig config;
-
-	private List<Pattern> patterns = new ArrayList<Pattern>();
-
-	@Modified
-	@Activate
-	public void activate(CMSSecurityFilterConfig config) {
-		if (config.hostDomains() != null && config.hostDomains().length > 0) {
-			log.info("Applying CMS Security Filter for domains {}", Arrays.toString(config.hostDomains()));
-			this.config = config;
-			for (String p : config.allowedPatterns()) {
-				patterns.add(Pattern.compile(p));
-			}
-		} else {
-			this.config = null;
-			log.info("No host domains supplied, CMS Security Filter not enabled");
-		}
-	}
-
-	@Override
-	public void init(FilterConfig filterConfig) throws ServletException {
-	}
-
-	@Override
-	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
-			throws IOException, ServletException {
-
-		SlingHttpServletRequest slingRequest = (SlingHttpServletRequest) request;
-		if (config != null && ArrayUtils.contains(config.hostDomains(), request.getServerName())) {
-			log.trace("Filtering requests to host {}", request.getServerName());
-			String uri = slingRequest.getRequestURI();
-			boolean allowed = false;
-			for (Pattern p : this.patterns) {
-				if (p.matcher(uri).matches()) {
-					log.trace("Allowing request matching pattern {}", p.toString());
-					allowed = true;
-					break;
-				}
-			}
-
-			// the uri isn't allowed automatically, so check user permissions
-			if (!allowed) {
-
-				// check to see if the user is a member of the specified group
-				if (StringUtils.isNotBlank(config.group())) {
-					Authorizable auth;
-					try {
-						Session session = slingRequest.getResourceResolver().adaptTo(Session.class);
-						UserManager userManager = AccessControlUtil.getUserManager(session);
-						log.trace("Retrieved user manager {} with session {}", userManager, session);
-						auth = userManager.getAuthorizable(slingRequest.getUserPrincipal());
-						if (auth != null) {
-							log.trace("Checking to see if user {} is in required group {}", auth.getID(),
-									config.group());
-							Iterator<Group> groups = ((User) auth).memberOf();
-							while (groups.hasNext()) {
-								if (groups.next().getID().equals(config.group())) {
-									allowed = true;
-									break;
-								}
-							}
-						}
-					} catch (Exception e) {
-						log.error("Exception determing group membership", e);
-					}
-
-					// just check to make sure the user is logged in
-				} else {
-					if (!"anonymous".equals(slingRequest.getResourceResolver().getUserID())) {
-						allowed = true;
-					}
-				}
-
-			}
-
-			// permission checked failed, so return an unauthorized error
-			if (!allowed) {
-				log.trace("Request to {} not allowed for user {}", slingRequest.getRequestURI(),
-						slingRequest.getResourceResolver().getUserID());
-				((HttpServletResponse) response).sendError(401);
-				return;
-			}
-		} else {
-			log.trace("Not filtering request to host {}", request.getServerName());
-		}
-
-		chain.doFilter(request, response);
-	}
-
-	@Override
-	public void destroy() {
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/filters/CMSSecurityFilterConfig.java b/cms/core/src/main/java/org/apache/sling/cms/core/filters/CMSSecurityFilterConfig.java
deleted file mode 100644
index 3882eac..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/filters/CMSSecurityFilterConfig.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.filters;
-
-import org.osgi.service.metatype.annotations.AttributeDefinition;
-import org.osgi.service.metatype.annotations.ObjectClassDefinition;
-
-
-/**
- * Configuration for the CMSSecurityFilter
- */
-@ObjectClassDefinition(name = "%cms.security.filter.name", description = "%cms.security.filter.description", localization = "OSGI-INF/l10n/bundle")
-public @interface CMSSecurityFilterConfig {
-
-	@AttributeDefinition(name = "%hostDomains.name", description = "%hostDomains.description")
-	String[] hostDomains();
-
-	@AttributeDefinition(name = "%allowedPatterns.name", description = "%allowedPatterns.description")
-	String[] allowedPatterns() default { "^\\/content\\/starter/.*$", "^\\/static/.*$",
-			"^\\/system\\/sling\\/form\\/login$" };
-
-	@AttributeDefinition(name = "%group.name", description = "%group.description")
-	String group();
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/filters/EditIncludeFilter.java b/cms/core/src/main/java/org/apache/sling/cms/core/filters/EditIncludeFilter.java
deleted file mode 100644
index 9bea174..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/filters/EditIncludeFilter.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.filters;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.util.Iterator;
-
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-
-import org.apache.commons.lang.StringUtils;
-import org.apache.jackrabbit.JcrConstants;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.cms.CMSConstants;
-import org.apache.sling.cms.core.models.Component;
-import org.apache.sling.cms.core.models.EditableResource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Filter for injecting the request attributes and markup to enable the Sling
- * CMS editor.
- */
-@org.osgi.service.component.annotations.Component(service = { Filter.class }, property = {
-		"sling.filter.scope=component" })
-public class EditIncludeFilter implements Filter {
-
-	private static final Logger log = LoggerFactory.getLogger(EditIncludeFilter.class);
-
-	public static final String ENABLED_ATTR_NAME = "cmsEditEnabled";
-
-	@Override
-	public void init(FilterConfig filterConfig) throws ServletException {
-	}
-
-	@Override
-	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
-			throws IOException, ServletException {
-		Resource resource = ((SlingHttpServletRequest) request).getResource();
-		boolean enabled = "true".equals(request.getAttribute(ENABLED_ATTR_NAME));
-		String editPath = getEditPath(resource);
-		PrintWriter writer = null;
-
-		if (enabled && StringUtils.isNotEmpty(editPath)) {
-			boolean last = false;
-			boolean first = false;
-			if (resource != null && resource.getParent() != null) {
-				Iterator<Resource> children = resource.getParent().listChildren();
-				if (!children.hasNext() || children.next().getPath().equals(resource.getPath())) {
-					first = true;
-				}
-				if (children.hasNext()) {
-					while (children.hasNext()) {
-						if (children.next().getPath().equals(resource.getPath()) && !children.hasNext()) {
-							last = true;
-						}
-					}
-				} else {
-					last = true;
-				}
-			}
-			boolean exists = resource.getResourceResolver().getResource(resource.getPath()) != null;
-			writer = response.getWriter();
-			Component component = resource.adaptTo(EditableResource.class).getComponent();
-			writer.write("<div class=\"Sling-CMS__component\" data-sling-cms-title=\""
-					+ (component != null ? component.getTitle() : "") + "\" data-sling-cms-resource-path=\""
-					+ resource.getPath() + "\" data-sling-cms-resource-type=\"" + resource.getResourceType()
-					+ "\" data-sling-cms-edit=\"" + editPath + "\">");
-			writer.write("<div class=\"Sling-CMS__edit-bar\">");
-			writer.write(
-					"<button class=\"Sling-CMS__edit-button\" data-sling-cms-action=\"edit\" data-sling-cms-path=\""
-							+ resource.getPath() + "\" data-sling-cms-edit=\"" + editPath
-							+ "\" title=\"Edit\">&#x270f;</button>");
-			if (!first || !last) {
-				writer.write(
-						"<button class=\"Sling-CMS__edit-button\" data-sling-cms-action=\"reorder\" data-sling-cms-path=\""
-								+ resource.getPath() + "\" title=\"Reorder\">&#8597;</button>");
-			}
-			if (!resource.getName().equals(JcrConstants.JCR_CONTENT) && exists) {
-				writer.write(
-						"<button class=\"Sling-CMS__edit-button\" data-sling-cms-action=\"delete\" data-sling-cms-path=\""
-								+ resource.getPath() + "\" title=\"Delete\">&times;</button>");
-			}
-
-			if (component != null) {
-				writer.write("<span class=\"Sling-CMS__component-title\">" + component.getTitle() + "</span>");
-			}
-			writer.write("</div>");
-		}
-		chain.doFilter(request, response);
-		if (enabled && StringUtils.isNotEmpty(editPath)) {
-			writer.write("</div>");
-		}
-	}
-
-	private String getEditPath(Resource resource) {
-		log.trace("getEditPage resource={}", resource);
-		String editPath = null;
-		if (resource != null) {
-			EditableResource editResource = new EditableResource(resource);
-			if (editResource != null) {
-				Component component = editResource.getComponent();
-				if (component != null && !component.isType(CMSConstants.COMPONENT_TYPE_PAGE)) {
-					editPath = component.getEditPath();
-				}
-			}
-		}
-		return editPath;
-	}
-
-	@Override
-	public void destroy() {
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/filters/LocaleFilter.java b/cms/core/src/main/java/org/apache/sling/cms/core/filters/LocaleFilter.java
deleted file mode 100644
index 8d39b89..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/filters/LocaleFilter.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.filters;
-
-import java.io.IOException;
-import java.util.ResourceBundle;
-
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.jsp.jstl.core.Config;
-import javax.servlet.jsp.jstl.fmt.LocalizationContext;
-
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.cms.core.models.Site;
-import org.apache.sling.cms.core.models.SiteManager;
-import org.osgi.service.component.annotations.Component;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Sets the locale for the request based on the containing site.
- */
-@Component(service = { Filter.class }, immediate = true, property = { "sling.filter.scope=request" })
-public class LocaleFilter implements Filter {
-
-	private static final Logger log = LoggerFactory.getLogger(LocaleFilter.class);
-
-	@Override
-	public void init(FilterConfig filterConfig) throws ServletException {
-	}
-
-	@Override
-	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
-			throws IOException, ServletException {
-
-		if (request instanceof SlingHttpServletRequest) {
-			SlingHttpServletRequest slingRequest = (SlingHttpServletRequest) request;
-			Site site = slingRequest.getResource().adaptTo(SiteManager.class).getSite();
-			if (site != null) {
-				log.debug("Setting bundle for {}", site.getLocaleString());
-				ResourceBundle bundle = slingRequest.getResourceBundle(site.getLocale());
-				Config.set(slingRequest, "javax.servlet.jsp.jstl.fmt.localizationContext",
-						new LocalizationContext(bundle, slingRequest.getLocale()));
-			} else {
-				log.trace("No site for {}", slingRequest);
-			}
-		}
-
-		chain.doFilter(request, response);
-	}
-
-	@Override
-	public void destroy() {
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/filters/PublishFilter.java b/cms/core/src/main/java/org/apache/sling/cms/core/filters/PublishFilter.java
deleted file mode 100644
index 8aa9c11..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/filters/PublishFilter.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.filters;
-
-import java.io.IOException;
-
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.commons.lang.ArrayUtils;
-import org.apache.jackrabbit.JcrConstants;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.cms.CMSConstants;
-import org.apache.sling.jcr.resource.JcrResourceConstants;
-import org.osgi.service.component.annotations.Component;
-
-/**
- * Denies requests to sling:Page and sling:File resources and children which are
- * not set to publish=true
- */
-@Component(service = { Filter.class }, property = { "sling.filter.scope=request",
-		"service.ranking=" + Integer.MAX_VALUE })
-public class PublishFilter implements Filter {
-
-	public static final String[] PUBLISHABLE_TYPES = new String[] { CMSConstants.NT_FILE, CMSConstants.NT_PAGE,
-			JcrResourceConstants.NT_SLING_FOLDER, JcrResourceConstants.NT_SLING_ORDERED_FOLDER };
-
-	public static final String[] VALID_METHODS = new String[] { "GET", "HEAD" };
-
-	@Override
-	public void init(FilterConfig filterConfig) throws ServletException {
-	}
-
-	@Override
-	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
-			throws IOException, ServletException {
-		if (request instanceof SlingHttpServletRequest) {
-			SlingHttpServletRequest slingRequest = (SlingHttpServletRequest) request;
-			if (ArrayUtils.contains(VALID_METHODS, slingRequest.getMethod())) {
-				Object editEnabled = slingRequest.getAttribute(CMSConstants.ATTR_EDIT_ENABLED);
-				if (!"true".equals(editEnabled)) {
-					Resource publishable = findPublishableParent(slingRequest.getResource());
-					if (publishable != null && publishable.getChild(JcrConstants.JCR_CONTENT) != null) {
-						if (!(publishable.getChild(JcrConstants.JCR_CONTENT).getValueMap()
-								.get(CMSConstants.PN_PUBLISHED, true))) {
-							((HttpServletResponse) response).sendError(404);
-							return;
-						}
-					}
-				}
-			}
-		}
-		chain.doFilter(request, response);
-	}
-
-	private Resource findPublishableParent(Resource resource) {
-		String type = resource.getValueMap().get(JcrConstants.JCR_PRIMARYTYPE, String.class);
-		if (ArrayUtils.contains(PUBLISHABLE_TYPES, type)) {
-			return resource;
-		} else if (resource.getParent() != null) {
-			return findPublishableParent(resource.getParent());
-		}
-		return null;
-	}
-
-	@Override
-	public void destroy() {
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/AbstractContentModel.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/AbstractContentModel.java
deleted file mode 100644
index d8464c2..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/AbstractContentModel.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.Calendar;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-
-import org.apache.commons.lang.StringUtils;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.api.resource.ValueMap;
-import org.apache.sling.models.annotations.Optional;
-
-/**
- * Abstract class representing the common attributes available in content
- * models.
- */
-public abstract class AbstractContentModel {
-
-	@Inject
-	@Optional
-	@Named("jcr:content")
-	private Resource contentResource;
-
-	@Inject
-	@Optional
-	@Named("jcr:content/jcr:created")
-	private Calendar created;
-
-	@Inject
-	@Optional
-	@Named("jcr:content/jcr:createdBy")
-	private String createdBy;
-
-	@Inject
-	@Optional
-	@Named("jcr:content/jcr:lastModified")
-	private Calendar lastModified;
-
-	@Inject
-	@Optional
-	@Named("jcr:content/jcr:lastModifiedBy")
-	private String lastModifiedBy;
-
-	protected Resource resource;
-
-	@Inject
-	@Named("jcr:content/jcr:title")
-	@Optional
-	private String title;
-
-	@Inject
-	@Named("jcr:primaryType")
-	private String type;
-
-	public Resource getContentResource() {
-		return contentResource;
-	}
-
-	public Calendar getCreated() {
-		return created;
-	}
-
-	public String getCreatedBy() {
-		return createdBy;
-	}
-
-	public Calendar getLastModified() {
-		return lastModified != null ? lastModified : created;
-	}
-
-	public String getLastModifiedBy() {
-		return lastModifiedBy != null ? lastModifiedBy : createdBy;
-	}
-
-	public String getName() {
-		return resource.getName();
-	}
-
-	public Resource getParent() {
-		return resource.getParent();
-	}
-
-	public String getPath() {
-		return resource.getPath();
-	}
-
-	public ValueMap getProperties() {
-		return getContentResource().getValueMap();
-	}
-
-	public abstract boolean isPublished();
-
-	public Resource getResource() {
-		return resource;
-	}
-
-	public String getTitle() {
-		if (StringUtils.isNotEmpty(title)) {
-			return title;
-		} else {
-			return resource.getName();
-		}
-	}
-
-	public String getType() {
-		return type;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/Component.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/Component.java
deleted file mode 100644
index 3d0ac1f..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/Component.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-
-import org.apache.commons.lang.ArrayUtils;
-import org.apache.commons.lang.StringUtils;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.Optional;
-
-/**
- * A model representing a sling:Component
- */
-@Model(adaptables = Resource.class)
-public class Component {
-
-	@Inject
-	@Optional
-	@Named("componentType")
-	private String[] componentType;
-
-	private Resource resource;
-
-	@Inject
-	@Optional
-	@Named("jcr:title")
-	private String title;
-
-	public Component(Resource resource) {
-		this.resource = resource;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	@Override
-	public boolean equals(Object obj) {
-		if (this == obj)
-			return true;
-		if (obj == null)
-			return false;
-		if (getClass() != obj.getClass())
-			return false;
-		Component other = (Component) obj;
-		if (resource == null) {
-			if (other.resource != null)
-				return false;
-		} else if (!resource.getPath().equals(other.resource.getPath()))
-			return false;
-		return true;
-	}
-
-	private Resource getComponentEditPath(Resource component) {
-		if (component != null) {
-			if (component.getChild("edit") != null) {
-				return component.getChild("edit");
-			} else {
-				component = component.getResourceResolver()
-						.getResource(component.getResourceResolver().getParentResourceType(component));
-				if (component != null) {
-					return getComponentEditPath(component);
-				}
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * @return the componentType
-	 */
-	public String[] getComponentType() {
-		return componentType;
-	}
-
-	/**
-	 * Returns the path for the editor for this resource if available
-	 * 
-	 * @return the editor path or null
-	 */
-	public String getEditPath() {
-		Resource editResource = getEditResource();
-		return editResource != null ? editResource.getPath() : null;
-	}
-
-	/**
-	 * Returns the resource for the editor for this resource if available
-	 * 
-	 * @return the editor resource or null
-	 */
-	public Resource getEditResource() {
-		return getComponentEditPath(resource);
-	}
-
-	/**
-	 * @return the resource
-	 */
-	public Resource getResource() {
-		return resource;
-	}
-
-	/**
-	 * @return the title
-	 */
-	public String getTitle() {
-		return title;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#hashCode()
-	 */
-	@Override
-	public int hashCode() {
-		final int prime = 31;
-		int result = 1;
-		result = prime * result + ((resource.getPath() == null) ? 0 : resource.getPath().hashCode());
-		return result;
-	}
-
-	/**
-	 * Returns true if the only component type on the component is the specified
-	 * type.
-	 * 
-	 * @param string
-	 * @return
-	 */
-	public boolean isType(String type) {
-		boolean isType = false;
-		if (this.getComponentType() != null && ArrayUtils.contains(this.getComponentType(), type)) {
-			isType = true;
-			for (String t : getComponentType()) {
-				if (StringUtils.isNotBlank(t) && !type.equals(t)) {
-					isType = false;
-				}
-			}
-		}
-		return isType;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	@Override
-	public String toString() {
-		return "Component [title=" + title + ", resource=" + resource + ", componentType=" + componentType + "]";
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/ComponentManager.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/ComponentManager.java
deleted file mode 100644
index d2d131d..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/ComponentManager.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import javax.jcr.query.Query;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.api.resource.ResourceResolver;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * A model for managing sling:Components
- */
-@Model(adaptables = ResourceResolver.class)
-public class ComponentManager {
-
-	private ResourceResolver resolver;
-
-	private Map<String, List<Component>> componentCache = null;
-
-	public ComponentManager(ResourceResolver resolver) {
-		this.resolver = resolver;
-	}
-
-	/**
-	 * Returns all of the components in Sling CMS with a component type
-	 * specified.
-	 * 
-	 * @return a list of the components
-	 */
-	public List<Component> getAllComponents() {
-		Set<Component> allComponents = new HashSet<Component>();
-		if (componentCache == null) {
-			loadComponents();
-		}
-		for (List<Component> components : componentCache.values()) {
-			allComponents.addAll(components);
-		}
-		return new ArrayList<Component>(allComponents);
-	}
-
-	/**
-	 * Returns a Map of the components with a component type specified with the
-	 * key of the map being the component type and the value being the list of
-	 * components for that type.
-	 * 
-	 * @return
-	 */
-	public Map<String, List<Component>> getComponentsByType() {
-		if (componentCache == null) {
-			loadComponents();
-		}
-		return componentCache;
-	}
-
-	/**
-	 * Returns a list of all of the registered component types
-	 * 
-	 * @return the list of component types
-	 */
-	public List<String> getComponentTypes() {
-		if (componentCache == null) {
-			loadComponents();
-		}
-		List<String> types = new ArrayList<String>(componentCache.keySet());
-		Collections.sort(types);
-		return types;
-	}
-
-	private void loadComponents() {
-		Iterator<Resource> components = resolver
-				.findResources("SELECT * FROM [sling:Component] WHERE [componentType] IS NOT NULL", Query.JCR_SQL2);
-		componentCache = new HashMap<String, List<Component>>();
-		while (components.hasNext()) {
-			Resource cmpRsrc = components.next();
-			Component component = cmpRsrc.adaptTo(Component.class);
-			if (component != null) {
-				for (String type : component.getComponentType()) {
-					if (!componentCache.containsKey(type)) {
-						componentCache.put(type, new ArrayList<Component>());
-					}
-					componentCache.get(type).add(component);
-				}
-			}
-		}
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/EditableResource.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/EditableResource.java
deleted file mode 100644
index a31f5c5..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/EditableResource.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * A model for representing a resource that can be edited through the Sling CMS.
- */
-@Model(adaptables = Resource.class)
-public class EditableResource {
-
-	private final Resource resource;
-
-	public EditableResource(Resource resource) {
-		this.resource = resource;
-	}
-	
-	public Component getComponent() {
-		if(getComponentResource() != null) {
-			return getComponentResource().adaptTo(Component.class);
-		}
-		return null;
-	}
-
-	/**
-	 * Gets the component for the specified resource.
-	 * 
-	 * @return the component for the specified resource
-	 */
-	public Resource getComponentResource() {
-		String resourceType = resource.getResourceType();
-		return resource.getResourceResolver().getResource(resourceType);
-	}
-
-	/**
-	 * Returns the path for the editor for this resource if available
-	 * 
-	 * @return the editor path or null
-	 */
-	public String getEditPath() {
-		if(getComponent() != null) {
-			return getComponent().getEditPath();
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the resource for the editor for this resource if available
-	 * 
-	 * @return the editor resource or null
-	 */
-	public Resource getEditResource() {
-		if(getComponent() != null) {
-			return getComponent().getEditResource();
-		}
-		return null;
-	}
-
-	/**
-	 * Gets the current resource.
-	 * 
-	 * @return the current resource
-	 */
-	public Resource getResource() {
-		return resource;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/ErrorHandler.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/ErrorHandler.java
deleted file mode 100644
index 6d470ce..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/ErrorHandler.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.io.IOException;
-
-import javax.annotation.PostConstruct;
-import javax.inject.Named;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.sling.api.SlingConstants;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.api.resource.ResourceResolver;
-import org.apache.sling.models.annotations.Default;
-import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.Optional;
-import org.apache.sling.models.annotations.injectorspecific.RequestAttribute;
-import org.apache.sling.models.annotations.injectorspecific.SlingObject;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Sling Model for retrieving an error handler based on the specified Sling
- * Request. Checks if the specified resource is contained within a Sling site
- * and if so, will display the error page found at
- * [site-root]/errors/[error-code] or [site-root]/errors/default
- */
-@Model(adaptables = SlingHttpServletRequest.class)
-public class ErrorHandler {
-
-	private static final Logger log = LoggerFactory.getLogger(ErrorHandler.class);
-
-	@RequestAttribute
-	@Named(SlingConstants.ERROR_STATUS)
-	@Optional
-	@Default(intValues = 500)
-	private Integer errorCode;
-
-	private SlingHttpServletRequest slingRequest;
-
-	private Resource handler;
-	
-	@SlingObject
-	private HttpServletResponse response;
-
-	public ErrorHandler(SlingHttpServletRequest slingRequest) {
-		this.slingRequest = slingRequest;
-	}
-
-	@PostConstruct
-	public void init() throws IOException {
-
-		Resource resource = slingRequest.getResource();
-		ResourceResolver resolver = slingRequest.getResourceResolver();
-
-		log.debug("Calculating error handling scripts for resource {} and error code {}", resource, errorCode);
-
-		if (slingRequest.getAttribute(SlingConstants.ERROR_EXCEPTION) != null) {
-			log.warn("Handing exception of type " + errorCode,
-					slingRequest.getAttribute(SlingConstants.ERROR_EXCEPTION));
-		}
-		
-		
-		try {
-			SiteManager siteMgr = resource.adaptTo(SiteManager.class);
-			if (siteMgr != null && siteMgr.getSite() != null) {
-				Site site = siteMgr.getSite();
-				log.debug("Checking for error pages in the site {}", site.getPath());
-
-				handler = site.getResource().getChild("errors/" + errorCode.toString());
-				if (handler == null) {
-					handler = site.getResource().getChild("errors/default");
-				}
-
-				if (handler != null) {
-					log.debug("Using error handler {}", handler);
-				} else {
-					log.debug("No error page defined for site {}", site.getPath());
-				}
-			}
-		} catch (Exception e) {
-			log.debug("Failed to retrieve current site, using default error handling");
-		}
-
-		if (handler == null) {
-			log.debug("Using Sling CMS default error pages");
-			handler = resolver.getResource("/content/sling-cms/errorhandling/" + errorCode.toString());
-			if (handler == null) {
-				handler = resolver.getResource("/content/sling-cms/errorhandling/default");
-			}
-			log.debug("Using Sling CMS error handler {}", handler);
-		}
-		
-		log.debug("Sending error {}",errorCode);
-		response.sendError(errorCode);
-		
-		log.debug("Error handler initialized successfully!");
-	}
-
-	public Resource getHandler() {
-		return handler;
-	}
-	
-	public int getErrorCode() {
-		return errorCode;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/LocaleList.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/LocaleList.java
deleted file mode 100644
index c83f481..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/LocaleList.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.List;
-import java.util.Locale;
-
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * A model for representing a site.
- */
-@Model(adaptables = SlingHttpServletRequest.class)
-public class LocaleList {
-
-	public List<Locale> getLocales() {
-		List<Locale> locales = new ArrayList<Locale>();
-		for (Locale locale : SimpleDateFormat.getAvailableLocales()) {
-			locales.add(locale);
-		}
-		Collections.sort(locales, new Comparator<Locale>() {
-			public int compare(Locale o1, Locale o2) {
-				return o1.toString().compareTo(o2.toString());
-			}
-		});
-		return locales;
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/LocaleResource.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/LocaleResource.java
deleted file mode 100644
index 2a91c98..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/LocaleResource.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.Locale;
-
-import org.apache.jackrabbit.JcrConstants;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * Model for retrieving the locale information from a resource with the
- * jcr:language property.
- */
-@Model(adaptables = Resource.class)
-public class LocaleResource {
-
-	private Locale locale;
-
-	public LocaleResource(Resource resource) {
-		this.locale = Locale
-				.forLanguageTag(resource.getValueMap().get(JcrConstants.JCR_LANGUAGE, String.class).replace("_", "-"));
-	}
-
-	public Locale getLocale() {
-		return locale;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/Page.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/Page.java
deleted file mode 100644
index 065f59e..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/Page.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-
-import org.apache.jackrabbit.JcrConstants;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.cms.CMSConstants;
-import org.apache.sling.cms.CMSUtils;
-import org.apache.sling.models.annotations.Default;
-import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.Optional;
-
-/**
- * A model representing a page.
- */
-@Model(adaptables = Resource.class)
-public class Page extends AbstractContentModel {
-
-	public static final Page getContainingPage(Resource resource) {
-		Resource pageRsrc = CMSUtils.findParentResourceofType(resource, CMSConstants.NT_PAGE);
-		Page page = null;
-		if (pageRsrc != null) {
-			page = pageRsrc.adaptTo(Page.class);
-		}
-		return page;
-	}
-
-	@Inject
-	@Named("jcr:content/published")
-	@Default(booleanValues = false)
-	private boolean published;
-
-	@Inject
-	@Optional
-	@Named(JcrConstants.JCR_CONTENT + "/" + CMSConstants.PN_TAXONOMY)
-	private String[] taxonomy;
-
-	@Inject
-	@Optional
-	@Named("jcr:content/sling:template")
-	private String template;
-
-	public Page(Resource resource) {
-		this.resource = resource;
-	}
-
-	public String[] getKeywords() {
-		List<String> keywords = new ArrayList<String>();
-		if (taxonomy != null) {
-			for (String item : taxonomy) {
-				Resource resource = this.resource.getResourceResolver().getResource(item);
-				if (resource != null) {
-					keywords.add(resource.getValueMap().get(CMSConstants.PN_TITLE, String.class));
-				}
-			}
-		}
-		return keywords.toArray(new String[keywords.size()]);
-	}
-
-	public boolean isPublished() {
-		return published;
-	}
-
-	public String getPublishedPath() {
-		Site site = resource.adaptTo(SiteManager.class).getSite();
-		if (site != null) {
-			return resource.getPath().replace(site.getPath(), "") + ".html";
-		} else {
-			return resource.getPath() + ".html";
-		}
-	}
-
-	public String getPublishedUrl() {
-		Site site = resource.adaptTo(SiteManager.class).getSite();
-		if (site != null) {
-			return site.getUrl() + getPublishedPath();
-		} else {
-			return resource.getPath();
-		}
-	}
-
-	public PageTemplate getTemplate() {
-		Resource templateResource = this.resource.getResourceResolver().getResource(template);
-		if (templateResource != null) {
-			return templateResource.adaptTo(PageTemplate.class);
-		} else {
-			return null;
-		}
-	}
-
-	public String getTemplatePath() {
-		return this.template;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/PageManager.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/PageManager.java
deleted file mode 100644
index 84bb9e7..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/PageManager.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.cms.CMSConstants;
-import org.apache.sling.cms.CMSUtils;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * A model used to retrieve pages.
- */
-@Model(adaptables = Resource.class)
-public class PageManager {
-
-	private final Page page;
-
-	public PageManager(Resource containingResource) {
-		Resource pageResource = CMSUtils.findParentResourceofType(containingResource, CMSConstants.NT_PAGE);
-		if (pageResource != null) {
-			page = pageResource.adaptTo(Page.class);
-		} else {
-			page = null;
-		}
-	}
-
-	public Page getPage() {
-		return page;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/PageTemplate.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/PageTemplate.java
deleted file mode 100644
index 268b0e1..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/PageTemplate.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.cms.CMSConstants;
-import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.Optional;
-
-/**
- * A simple model for representing a page template
- */
-@Model(adaptables = Resource.class)
-public class PageTemplate {
-
-	@Inject
-	@Optional
-	private String[] allowedPaths;
-
-	@Inject
-	@Optional
-	private String[] availableComponentTypes;
-
-	@Inject
-	@Optional
-	private List<Resource> componentConfigurations;
-
-	@Inject
-	private List<Resource> fields;
-
-	private Resource resource;
-
-	@Inject
-	@Optional
-	private String template;
-
-	@Inject
-	@Named(CMSConstants.PN_TITLE)
-	private String title;
-
-	public PageTemplate(Resource resource) {
-		this.resource = resource;
-	}
-
-	/**
-	 * @return the allowedPaths
-	 */
-	public String[] getAllowedPaths() {
-		return allowedPaths;
-	}
-
-	/**
-	 * @return the availableComponentTypes
-	 */
-	public String[] getAvailableComponentTypes() {
-		return availableComponentTypes;
-	}
-
-	/**
-	 * @return the componentConfigs
-	 */
-	public Map<String, Resource> getComponentConfigs() {
-		Map<String, Resource> configs = new HashMap<String, Resource>();
-		if (componentConfigurations != null) {
-			for (Resource cfg : componentConfigurations) {
-				configs.put(cfg.getValueMap().get("type", String.class), cfg);
-			}
-		}
-		return configs;
-	}
-
-	/**
-	 * @return the fields
-	 */
-	public List<Resource> getFields() {
-		return fields;
-	}
-
-	/**
-	 * @return the resource
-	 */
-	public Resource getResource() {
-		return resource;
-	}
-
-	/**
-	 * @return the template
-	 */
-	public String getTemplate() {
-		return template;
-	}
-
-	/**
-	 * @return the title
-	 */
-	public String getTitle() {
-		return title;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	@Override
-	public String toString() {
-		return "PageTemplate [allowedPaths=" + Arrays.toString(allowedPaths) + ", availableComponentTypes="
-				+ Arrays.toString(availableComponentTypes) + ", fields=" + fields + ", resource=" + resource
-				+ ", template=" + template + ", title=" + title + "]";
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/PageTemplateManager.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/PageTemplateManager.java
deleted file mode 100644
index 1887c79..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/PageTemplateManager.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * A model for retrieving the available templates to create a page under the
- * specified resource.
- */
-@Model(adaptables = Resource.class)
-public class PageTemplateManager {
-
-	private SiteConfig siteConfig;
-	private Resource resource;
-
-	public PageTemplateManager(Resource resource) {
-		Site site = resource.adaptTo(SiteManager.class).getSite();
-		this.siteConfig = site.getSiteConfig();
-		this.resource = resource;
-	}
-
-	public List<PageTemplate> getAvailableTemplates() {
-		String path = resource.getPath();
-		List<PageTemplate> availableTemplates = new ArrayList<PageTemplate>();
-		if (siteConfig != null && siteConfig.getPageTemplates() != null) {
-			for (PageTemplate template : siteConfig.getPageTemplates()) {
-				if (template != null && template.getAllowedPaths() != null) {
-					for (String allowedPath : template.getAllowedPaths()) {
-						if (path.matches(allowedPath)) {
-							availableTemplates.add(template);
-							break;
-						}
-					}
-				}
-			}
-		}
-		return availableTemplates;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	@Override
-	public String toString() {
-		return "PageTemplateManager [siteConfig=" + siteConfig + ", resource=" + resource + "]";
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/RedirectAttribute.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/RedirectAttribute.java
deleted file mode 100644
index 02e8e62..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/RedirectAttribute.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
-
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * Allows passing information between redirects
- */
-@Model(adaptables = SlingHttpServletRequest.class)
-public class RedirectAttribute {
-
-	public enum LEVEL {
-		danger, info, success, warning
-	}
-
-	private static final String LEVEL_SESSION_KEY = "REDIRECT_LEVEL";
-
-	private static final String MESSAGE_SESSION_KEY = "REDIRECT_MESSAGE";
-
-	public static void setMessage(HttpServletRequest request, LEVEL level, String message) {
-		setMessage(request.getSession(), level, message);
-	}
-
-	public static void setMessage(HttpSession session, LEVEL level, String message) {
-		session.setAttribute(MESSAGE_SESSION_KEY, message);
-		session.setAttribute(LEVEL_SESSION_KEY, level.toString());
-	}
-
-	private SlingHttpServletRequest request;
-
-	public RedirectAttribute(SlingHttpServletRequest request) {
-		this.request = request;
-	}
-
-	public String getLevel() {
-		String level = (String) request.getSession().getAttribute(LEVEL_SESSION_KEY);
-		if (level == null) {
-			level = LEVEL.info.toString();
-		}
-		request.getSession().removeAttribute(LEVEL_SESSION_KEY);
-		return level;
-	}
-
-	public String getMessageText() {
-		String message = (String) request.getSession().getAttribute(MESSAGE_SESSION_KEY);
-		request.getSession().removeAttribute(MESSAGE_SESSION_KEY);
-		return message;
-	}
-
-	public boolean isMessageSet() {
-		return request.getSession().getAttribute(MESSAGE_SESSION_KEY) != null;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/ReferenceOperation.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/ReferenceOperation.java
deleted file mode 100644
index 8d86cd6..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/ReferenceOperation.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.Iterator;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import javax.jcr.query.Query;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.api.resource.ValueMap;
-import org.apache.sling.cms.CMSConstants;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Abstract operation for Reference operations.
- */
-public abstract class ReferenceOperation {
-
-	private static final Logger log = LoggerFactory.getLogger(ReferenceOperation.class);
-
-	private Pattern regex = null;
-
-	private Resource resource = null;
-
-	public ReferenceOperation(Resource resource) {
-		String path = resource.getPath().replace("/", "\\/");
-		if (CMSConstants.NT_PAGE.equals(resource.getResourceType())) {
-			regex = Pattern.compile(
-					"(^" + path + "($|\\/)|(\\'|\\\")" + path + "(\\.html|\\'|\\\"|\\/))");
-		} else {
-			regex = Pattern.compile("(^" + path + "($|\\/)|(\\'|\\\")" + path + "(\\'|\\\"|\\/))");
-		}
-		this.resource = resource;
-	}
-
-	public void init() {
-		log.debug("Finding references to {}", resource.getPath());
-
-		String query = "SELECT * FROM [nt:base] AS s WHERE CONTAINS(s.*, '" + resource.getPath() + "')";
-		Iterator<Resource> resources = resource.getResourceResolver().findResources(query, Query.JCR_SQL2);
-		log.debug("Checking for references with: {}", query);
-		while (resources.hasNext()) {
-			Resource r = resources.next();
-			log.debug("Checking for references in resource {}", r);
-			ValueMap properties = r.getValueMap();
-			for (String k : properties.keySet()) {
-				if (properties.get(k) instanceof String) {
-					Matcher matcher = regex.matcher(properties.get(k, String.class));
-					if (matcher.find()) {
-						log.trace("Found reference in property {}@{}", r.getPath(), k);
-						doProcess(r, k);
-					}
-				} else if (properties.get(k) instanceof String[]) {
-					boolean matches = false;
-					for (String v : properties.get(k, String[].class)) {
-						Matcher matcher = regex.matcher(v);
-						if (matcher.find()) {
-							matches = true;
-							break;
-						}
-					}
-					if (matches) {
-						log.trace("Found reference in property {}@{}", r.getPath(), k);
-						doProcess(r, k);
-					}
-				}
-			}
-		}
-	}
-
-	public abstract void doProcess(Resource resource, String matchingKey);
-
-	public Pattern getRegex() {
-		return regex;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/References.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/References.java
deleted file mode 100644
index 9be4882..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/References.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * Model for finding the references to a Resource
- */
-@Model(adaptables = Resource.class)
-public class References extends ReferenceOperation {
-
-	private List<String> references = new ArrayList<String>();
-
-	public References(Resource resource) {
-		super(resource);
-	}
-	
-
-	public List<String> getReferences() {
-		init();
-		return references;
-	}
-
-	@Override
-	public void doProcess(Resource r, String matchingKey) {
-		references.add(r.getPath() + "@" + matchingKey);
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/Site.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/Site.java
deleted file mode 100644
index 80ab164..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/Site.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.Locale;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-
-import org.apache.jackrabbit.JcrConstants;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.cms.CMSConstants;
-import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.Optional;
-
-/**
- * A model for representing a site.
- */
-@Model(adaptables = Resource.class)
-public class Site {
-
-	public static final String PN_CONFIG = CMSConstants.NAMESPACE + ":configRef";
-	public static final String PN_URL = CMSConstants.NAMESPACE + ":url";
-
-	private static Resource findSiteResource(Resource resource) {
-		if (CMSConstants.NT_SITE.equals(resource.getValueMap().get(JcrConstants.JCR_PRIMARYTYPE, String.class))) {
-			return resource;
-		} else if (resource.getParent() != null) {
-			return findSiteResource(resource.getParent());
-		}
-		return null;
-	}
-
-	public static Site getSite(Resource resource) {
-		Site site = null;
-		Resource siteResource = Site.findSiteResource(resource);
-		if (siteResource != null) {
-			site = siteResource.adaptTo(Site.class);
-		}
-		return site;
-	}
-
-	@Inject
-	@Named(PN_CONFIG)
-	private String config;
-
-	@Inject
-	@Named(CMSConstants.PN_DESCRIPTION)
-	@Optional
-	private String description;
-
-	@Inject
-	@Named(CMSConstants.PN_LANGUAGE)
-	private String locale;
-
-	private Resource resource;
-
-	@Inject
-	@Named(CMSConstants.PN_TITLE)
-	private String title;
-
-	@Inject
-	@Named(PN_URL)
-	private String url;
-
-	public Site(Resource resource) {
-		this.resource = resource;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	@Override
-	public boolean equals(Object obj) {
-		if (this == obj)
-			return true;
-		if (obj == null)
-			return false;
-		if (getClass() != obj.getClass())
-			return false;
-		Site other = (Site) obj;
-		if (resource == null) {
-			if (other.resource != null)
-				return false;
-		} else if (!resource.getPath().equals(other.resource.getPath()))
-			return false;
-		return true;
-	}
-
-	public String getDescription() {
-		return description;
-	}
-
-	public Locale getLocale() {
-		String[] segments = locale.split("_");
-		if (segments.length == 3) {
-			return new Locale(segments[0], segments[1], segments[2]);
-		} else if (segments.length == 2) {
-			return new Locale(segments[0], segments[1]);
-		}
-		return new Locale(segments[0]);
-	}
-
-	public String getLocaleString() {
-		return locale;
-	}
-
-	public String getPath() {
-		return resource.getPath();
-	}
-
-	public Resource getResource() {
-		return resource;
-	}
-
-	public SiteConfig getSiteConfig() {
-		Resource scr = resource.getResourceResolver().getResource(getSiteConfigPath());
-		if (scr != null) {
-			return scr.adaptTo(SiteConfig.class);
-		}
-		return null;
-	}
-
-	public String getSiteConfigPath() {
-		return config;
-	}
-
-	public String getTitle() {
-		return title;
-	}
-
-	/**
-	 * @return the url
-	 */
-	public String getUrl() {
-		return url;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#hashCode()
-	 */
-	@Override
-	public int hashCode() {
-		final int prime = 31;
-		int result = 1;
-		result = prime * result + ((resource.getPath() == null) ? 0 : resource.getPath().hashCode());
-		return result;
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	@Override
-	public String toString() {
-		return "Site [config=" + config + ", description=" + description + ", locale=" + locale + ", resource="
-				+ resource + ", title=" + title + ", url=" + url + "]";
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/SiteConfig.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/SiteConfig.java
deleted file mode 100644
index 4a4e699..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/SiteConfig.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.List;
-
-import javax.inject.Inject;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.cms.CMSUtils;
-import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.Optional;
-
-/**
- * A model representing a site configuration.
- */
-@Model(adaptables = Resource.class)
-public class SiteConfig {
-
-	@Inject
-	@Optional
-	private List<Resource> templates;
-
-	@Inject
-	@Optional
-	private List<Resource> parameters;
-
-	private Resource resource;
-
-	public SiteConfig(Resource resource) {
-		this.resource = resource;
-	}
-
-	/**
-	 * @return the pageTemplates
-	 */
-	public List<PageTemplate> getPageTemplates() {
-		return CMSUtils.adaptResources(templates, PageTemplate.class);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see java.lang.Object#toString()
-	 */
-	@Override
-	public String toString() {
-		return "SiteConfig [parameters=" + parameters + ", templates=" + templates + ", resource=" + resource
-				+ "]";
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/SiteManager.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/SiteManager.java
deleted file mode 100644
index 6cfc6e0..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/SiteManager.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * A model for retrieving sites.
- */
-@Model(adaptables = Resource.class)
-public class SiteManager {
-
-	private final Site site;
-	
-
-	public SiteManager(Resource containingResource) {
-		site = Site.getSite(containingResource);
-	}
-
-	public Site getSite() {
-		return site;
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/models/i18nHelper.java b/cms/core/src/main/java/org/apache/sling/cms/core/models/i18nHelper.java
deleted file mode 100644
index 655305d..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/models/i18nHelper.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.models;
-
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.Random;
-import java.util.Set;
-
-import javax.jcr.query.Query;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.Model;
-
-/**
- * A model retrieving all of the keys for a i18n dictionary
- */
-@Model(adaptables = Resource.class)
-public class i18nHelper {
-
-	private Resource resource;
-
-	private Set<String> keys = new HashSet<String>();
-
-	private Random rand = new Random();
-
-	public i18nHelper(Resource resource) {
-		this.resource = resource;
-	}
-
-	public Set<String> getKeys() {
-		if (keys.isEmpty()) {
-			Iterator<Resource> messageEntries = resource.getResourceResolver().findResources(
-					"SELECT * FROM [sling:MessageEntry] AS s WHERE ISDESCENDANTNODE([" + resource.getPath() + "])",
-					Query.JCR_SQL2);
-			while (messageEntries.hasNext()) {
-				Resource entry = messageEntries.next();
-				keys.add(entry.getValueMap().get("sling:key", String.class));
-			}
-		}
-		return keys;
-	}
-
-	public String getRandom() {
-		return String.valueOf(rand.nextInt());
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/operations/BulkReplaceOperation.java b/cms/core/src/main/java/org/apache/sling/cms/core/operations/BulkReplaceOperation.java
deleted file mode 100644
index 8722389..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/operations/BulkReplaceOperation.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.operations;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.ModifiableValueMap;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.servlets.post.Modification;
-import org.apache.sling.servlets.post.PostOperation;
-import org.apache.sling.servlets.post.PostResponse;
-import org.apache.sling.servlets.post.SlingPostProcessor;
-import org.osgi.service.component.annotations.Component;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * The <code>BulkReplaceOperation</code> class will update all of the properties
- * applicable to the supplied parameters under the resource for the operation,
- * replacing the find string with the replacement value.
- */
-@Component(immediate = true, service = { PostOperation.class }, property = PostOperation.PROP_OPERATION_NAME
-		+ "=bulkreplace")
-public class BulkReplaceOperation implements PostOperation {
-
-	private static final Logger log = LoggerFactory.getLogger(BulkReplaceOperation.class);
-
-	public static final String PN_UPDATE_PROPERTIES = "updateProperties";
-	public static final String MODE_REGEX = "regex";
-	public static final String PN_FIND = "find";
-	public static final String PN_REPLACE = "replace";
-	public static final String PN_MODE = "mode";
-
-	@Override
-	public void run(SlingHttpServletRequest request, PostResponse response, SlingPostProcessor[] processors) {
-
-		try {
-			// calculate the paths
-			String path = request.getResource().getPath();
-			response.setPath(path);
-
-			// perform the bulk replacement
-			Pattern updateProperties = Pattern.compile(request.getParameter(PN_UPDATE_PROPERTIES));
-			log.debug("Updating properties matching: {}", updateProperties.pattern());
-			Pattern rfind = null;
-			String find = request.getParameter(PN_FIND);
-			if (MODE_REGEX.equals(request.getParameter(PN_MODE))) {
-				log.debug("Using regular expressions to search for {}", find);
-				rfind = Pattern.compile(find);
-			} else {
-				log.debug("Searching for {}", find);
-			}
-			String replace = request.getParameter(PN_REPLACE);
-			log.debug("Replacing with {}", replace);
-
-			final List<Modification> changes = new ArrayList<Modification>();
-			updateProperties(request.getResource(), updateProperties, rfind, find, replace, response, changes);
-
-			// invoke processors
-			if (processors != null) {
-				for (SlingPostProcessor processor : processors) {
-					processor.process(request, changes);
-				}
-			}
-
-			// check modifications for remaining postfix and store the base path
-			final Map<String, String> modificationSourcesContainingPostfix = new HashMap<>();
-			final Set<String> allModificationSources = new HashSet<>(changes.size());
-			for (final Modification modification : changes) {
-				final String source = modification.getSource();
-				if (source != null) {
-					allModificationSources.add(source);
-					final int atIndex = source.indexOf('@');
-					if (atIndex > 0) {
-						modificationSourcesContainingPostfix.put(source.substring(0, atIndex), source);
-					}
-				}
-			}
-			request.getResourceResolver().commit();
-
-		} catch (Exception e) {
-
-			log.error("Exception during response processing.", e);
-			response.setError(e);
-
-		}
-	}
-
-	private void updateProperties(Resource resource, Pattern updateProperties, Pattern rfind, String find,
-			String replace, PostResponse response, List<Modification> changes) {
-		ModifiableValueMap properties = resource.adaptTo(ModifiableValueMap.class);
-		boolean updated = false;
-		for (String key : properties.keySet()) {
-
-			if (updateProperties.matcher(key).matches()) {
-				log.trace("Checking property {}@{}", resource.getPath(), key);
-				if (properties.get(key) instanceof String) {
-					String value = properties.get(key, String.class);
-					if (rfind == null && (value.contains(find) || value.equals(find))) {
-						value = value.replace(find, replace);
-						log.trace("Value after replacement: {}", value);
-						properties.put(key, value);
-						updated = true;
-					} else if (rfind != null) {
-						Matcher m = rfind.matcher(value);
-						if (m.find()) {
-							value = rfind.matcher(value).replaceAll(replace);
-							log.trace("Value after replacement: {}", value);
-							properties.put(key, value);
-							updated = true;
-						}
-					}
-				} else if (properties.get(key) instanceof String[]) {
-					log.trace("Found array value");
-					boolean arrUpdated = false;
-					String[] v = properties.get(key, String[].class);
-					for (int i = 0; i < v.length; i++) {
-						String value = v[i];
-						if (rfind == null && (value.contains(find) || value.equals(find))) {
-							v[i] = value.replace(find, replace);
-							arrUpdated = true;
-						} else if (rfind != null) {
-							Matcher m = rfind.matcher(value);
-							if (m.find()) {
-								v[i] = rfind.matcher(value).replaceAll(replace);
-								arrUpdated = true;
-							}
-						}
-					}
-					if (arrUpdated) {
-						log.trace("Value after replacement: {}", Arrays.toString(v));
-						properties.put(key, v);
-						updated = true;
-					}
-				}
-			}
-		}
-		if (updated) {
-			response.onModified(resource.getPath());
-			changes.add(Modification.onModified(resource.getPath()));
-		}
-		for (Resource child : resource.getChildren()) {
-			updateProperties(child, updateProperties, rfind, find, replace, response, changes);
-		}
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/operations/CheckpointOperation.java b/cms/core/src/main/java/org/apache/sling/cms/core/operations/CheckpointOperation.java
deleted file mode 100644
index fd4fdbb..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/operations/CheckpointOperation.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with this
- * work for additional information regarding copyright ownership. The ASF
- * licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.sling.cms.core.operations;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import javax.jcr.Node;
-import javax.jcr.RepositoryException;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.PersistenceException;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.servlets.post.Modification;
-import org.apache.sling.servlets.post.PostOperation;
-import org.apache.sling.servlets.post.PostResponse;
-import org.apache.sling.servlets.post.SlingPostProcessor;
-import org.osgi.service.component.annotations.Component;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * The <code>CheckpointOperation</code> class will perform a JCR Version
- * Checkpoint operation on the underlying JCR Node. The checkpoint operation
- * depends on the resources being backed up by a JCR node.
- */
-@Component(immediate = true, service = { PostOperation.class }, property = PostOperation.PROP_OPERATION_NAME
-		+ "=checkpoint")
-public class CheckpointOperation implements PostOperation {
-
-	private static final Logger log = LoggerFactory.getLogger(CheckpointOperation.class);
-
-	public void run(final SlingHttpServletRequest request, final PostResponse response,
-			final SlingPostProcessor[] processors) {
-
-		try {
-			// calculate the paths
-			String path = request.getResource().getPath();
-			response.setPath(path);
-
-			final List<Modification> changes = new ArrayList<>();
-
-			doRun(request, response, changes);
-
-			// invoke processors
-			if (processors != null) {
-				for (SlingPostProcessor processor : processors) {
-					processor.process(request, changes);
-				}
-			}
-			log.debug("Saving changes...");
-			request.getResourceResolver().commit();
-
-			// check modifications for remaining postfix and store the base path
-			final Map<String, String> modificationSourcesContainingPostfix = new HashMap<>();
-			final Set<String> allModificationSources = new HashSet<>(changes.size());
-			for (final Modification modification : changes) {
-				final String source = modification.getSource();
-				if (source != null) {
-					allModificationSources.add(source);
-					final int atIndex = source.indexOf('@');
-					if (atIndex > 0) {
-						modificationSourcesContainingPostfix.put(source.substring(0, atIndex), source);
-					}
-				}
-			}
-
-		} catch (Exception e) {
-			log.error("Exception during response processing.", e);
-			response.setError(e);
-		}
-	}
-
-	protected void doRun(SlingHttpServletRequest request, PostResponse response, List<Modification> changes)
-			throws PersistenceException {
-		try {
-			Resource resource = request.getResource();
-			Node node = resource.adaptTo(Node.class);
-			
-			if (node == null) {
-				response.setStatus(HttpServletResponse.SC_NOT_FOUND, "Missing source " + resource + " for checkpoint");
-				return;
-			}
-			log.debug("Adding checkpoint for Node {}", node.getPath());
-			node.getSession().getWorkspace().getVersionManager().checkpoint(node.getPath());
-			
-			changes.add(Modification.onCheckin(resource.getPath()));
-			changes.add(Modification.onCheckout(resource.getPath()));
-			
-		} catch (final RepositoryException re) {
-			throw new PersistenceException(re.getMessage(), re);
-		}
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/operations/PropertyHintNodeNameGenerator.java b/cms/core/src/main/java/org/apache/sling/cms/core/operations/PropertyHintNodeNameGenerator.java
deleted file mode 100644
index ce8b279..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/operations/PropertyHintNodeNameGenerator.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.operations;
-
-import org.apache.commons.lang.StringUtils;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.request.RequestParameter;
-import org.apache.sling.api.request.RequestParameterMap;
-import org.apache.sling.cms.core.operations.PropertyHintNodeNameGenerator.Config;
-import org.apache.sling.servlets.post.NodeNameGenerator;
-import org.osgi.service.component.annotations.Activate;
-import org.osgi.service.component.annotations.Component;
-import org.osgi.service.component.annotations.Modified;
-import org.osgi.service.metatype.annotations.AttributeDefinition;
-import org.osgi.service.metatype.annotations.Designate;
-import org.osgi.service.metatype.annotations.ObjectClassDefinition;
-
-/**
- * Custom NodeNameGenerator for generating names based on the value of another
- * named property
- */
-@Component(service = NodeNameGenerator.class, immediate = true)
-@Designate(ocd = Config.class)
-public class PropertyHintNodeNameGenerator implements NodeNameGenerator {
-
-	@ObjectClassDefinition(name = "%cms.name.generator.name", description = "%cms.name.generator.description", localization = "OSGI-INF/l10n/bundle")
-
-	public @interface Config {
-
-		@AttributeDefinition(name = "%allowed.chars.name", description = "%allowed.chars.description")
-		String allowed_chars() default "abcdefghijklmnopqrstuvwxyz0123456789_-";
-
-		@AttributeDefinition(name = "%replacement.char.name", description = "%replacement.char.description")
-		String replacement_char() default "-";
-	}
-
-	/**
-	 * Optional request parameter specifying a parameter name to use for the name of
-	 * the newly created node (value is ":nameParam").
-	 */
-	public static final String RP_NODE_NAME_PARAM = ":nameParam";
-	
-	private String allowedChars;
-
-	private char replacementChar;
-
-	@Activate
-	@Modified
-	public void activate(Config config) {
-		this.allowedChars = config.allowed_chars();
-		this.replacementChar = config.replacement_char().toCharArray()[0];
-	}
-
-	public String filter(String nodeName) {
-		final StringBuilder sb = new StringBuilder();
-		char lastAdded = 0;
-
-		nodeName = nodeName.toLowerCase();
-		for (int i = 0; i < nodeName.length(); i++) {
-			final char c = nodeName.charAt(i);
-			char toAdd = c;
-
-			if (allowedChars.indexOf(c) < 0) {
-				if (lastAdded == replacementChar) {
-					// do not add several _ in a row
-					continue;
-				}
-				toAdd = replacementChar;
-
-			} else if (i == 0 && Character.isDigit(c)) {
-				sb.append(replacementChar);
-			}
-
-			sb.append(toAdd);
-			lastAdded = toAdd;
-		}
-
-		if (sb.length() == 0) {
-			sb.append(replacementChar);
-		}
-
-		return sb.toString();
-	}
-
-	@Override
-	public String getNodeName(SlingHttpServletRequest request, String parentPath, boolean requirePrefix,
-			NodeNameGenerator defaultNodeNameGenerator) {
-		RequestParameterMap parameters = request.getRequestParameterMap();
-		String name = null;
-
-		// If the :nameParam parameter is specified use that parameter to generate the
-		// name
-		if (parameters != null) {
-			RequestParameter nameParam = null;
-			RequestParameter paramName = parameters.getValue(RP_NODE_NAME_PARAM);
-			if (paramName != null && StringUtils.isNotBlank(paramName.getString())) {
-				nameParam = parameters.getValue(paramName.getString());
-			}
-			if (nameParam != null) {
-				if (nameParam.getString() != null && StringUtils.isNotBlank(nameParam.getString())) {
-					name = filter(nameParam.getString());
-				}
-			}
-		}
-
-		return name;
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/operations/UpdateReferencesPostOperation.java b/cms/core/src/main/java/org/apache/sling/cms/core/operations/UpdateReferencesPostOperation.java
deleted file mode 100644
index 357b0d1..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/operations/UpdateReferencesPostOperation.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with this
- * work for additional information regarding copyright ownership. The ASF
- * licenses this file to You under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations under
- * the License.
- */
-package org.apache.sling.cms.core.operations;
-
-import java.util.Arrays;
-import java.util.List;
-
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.ModifiableValueMap;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.cms.core.models.ReferenceOperation;
-import org.apache.sling.servlets.post.Modification;
-import org.apache.sling.servlets.post.SlingPostConstants;
-import org.apache.sling.servlets.post.SlingPostProcessor;
-import org.osgi.framework.Constants;
-import org.osgi.service.component.annotations.Component;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * The <code>UpdateReferencesPostOperation</code> class will update all of the
- * references from a resource which is being moved or deleted to another
- * resource.
- */
-@Component(immediate = true, service = { SlingPostProcessor.class }, property = Constants.SERVICE_RANKING
-		+ "=-1")
-public class UpdateReferencesPostOperation implements SlingPostProcessor {
-
-	public static final String RP_UPDATE_REFERENCES = SlingPostConstants.RP_PREFIX + "updateReferences";
-
-	private static final Logger log = LoggerFactory.getLogger(UpdateReferencesPostOperation.class);
-
-	@Override
-	public void process(SlingHttpServletRequest request, final List<Modification> changes) throws Exception {
-		if ((SlingPostConstants.OPERATION_DELETE.equals(request.getParameter(SlingPostConstants.RP_OPERATION))
-				|| SlingPostConstants.OPERATION_MOVE.equals(request.getParameter(SlingPostConstants.RP_OPERATION)))
-				&& "true".equalsIgnoreCase(request.getParameter(RP_UPDATE_REFERENCES))) {
-
-			final String find = request.getResource().getPath();
-			final String destination = request.getParameter(SlingPostConstants.RP_DEST);
-			log.debug("Using destination: {}", destination);
-			ReferenceOperation ro = new ReferenceOperation(request.getResource()) {
-				@Override
-				public void doProcess(Resource resource, String matchingKey) {
-					ModifiableValueMap properties = resource.adaptTo(ModifiableValueMap.class);
-					log.trace("Updating references in property {}@{}", resource.getPath(), matchingKey);
-					if (properties.get(matchingKey) instanceof String) {
-						String value = properties.get(matchingKey, String.class).replace(find, destination);
-						properties.put(matchingKey, value);
-						log.trace("Updated value {}", value);
-					} else if (properties.get(matchingKey) instanceof String[]) {
-						String[] values = properties.get(matchingKey, String[].class);
-						for (int i = 0; i < values.length; i++) {
-							values[i] = values[i].replace(find, destination);
-						}
-						properties.put(matchingKey, values);
-						log.trace("Updated values {}", Arrays.toString(values));
-					}
-					changes.add(Modification.onModified(resource.getPath()));
-				}
-			};
-			ro.init();
-		}
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/HTML5Serializer.java b/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/HTML5Serializer.java
deleted file mode 100644
index 67062f5..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/HTML5Serializer.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.rewriter;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.caconfig.resource.ConfigurationResourceResolver;
-import org.apache.sling.rewriter.ProcessingComponentConfiguration;
-import org.apache.sling.rewriter.ProcessingContext;
-import org.apache.sling.rewriter.Serializer;
-import org.xml.sax.Attributes;
-import org.xml.sax.Locator;
-import org.xml.sax.SAXException;
-
-/**
- * Serializer for writing HTML5 compliant markup
- *
- */
-public class HTML5Serializer implements Serializer {
-
-	private static final int CHAR_EQ = 61;
-
-	private static final int CHAR_GT = 62;
-
-	private static final int CHAR_SP = 32;
-
-	private static final int CHAR_LT = 60;
-
-	private final Set<String> emptyTags = new HashSet<String>() {
-		private static final long serialVersionUID = 1L;
-		{
-			add("br");
-			add("area");
-			add("link");
-			add("img");
-			add("param");
-			add("hr");
-			add("input");
-			add("col");
-			add("base");
-			add("meta");
-		}
-	};
-
-	private PrintWriter writer;
-
-	private ConfigurationResourceResolver resolver;
-
-	private Resource rewriteConfig;
-
-	public HTML5Serializer(ConfigurationResourceResolver resolver) {
-		this.resolver = resolver;
-	}
-
-	public void characters(char buffer[], int offset, int length) throws SAXException {
-		if (length == 0) {
-			writer.flush();
-		} else {
-			writer.write(buffer, offset, length);
-		}
-	}
-
-	@Override
-	public void dispose() {
-		// TODO Auto-generated method stub
-
-	}
-
-	public void endDocument() throws SAXException {
-		writer.flush();
-	}
-
-	public void endElement(String uri, String localName, String name) throws SAXException {
-		if (!emptyTags.contains(localName)) {
-			writer.write("</");
-			writer.write(localName);
-			writer.write(CHAR_GT);
-		}
-	}
-
-	public void endPrefixMapping(String s) throws SAXException {
-	}
-
-	public void ignorableWhitespace(char ac[], int i, int j) throws SAXException {
-	}
-
-	@Override
-	public void init(ProcessingContext context, ProcessingComponentConfiguration config) throws IOException {
-		if (context.getWriter() == null) {
-			throw new IllegalArgumentException("Failed to initialize HTML5Serializer, null writer specified!");
-		} else {
-			writer = context.getWriter();
-			rewriteConfig = resolver.getResource(context.getRequest().getResource(), "site", "rewrite");
-			return;
-		}
-	}
-
-	public void processingInstruction(String s, String s1) throws SAXException {
-	}
-
-	public void setDocumentLocator(Locator locator1) {
-	}
-
-	public void skippedEntity(String s) throws SAXException {
-	}
-
-	public void startDocument() throws SAXException {
-		writer.println(rewriteConfig.getValueMap().get("doctype", String.class));
-	}
-
-	public void startElement(String uri, String localName, String name, Attributes atts) throws SAXException {
-		boolean endSlash = false;
-		writer.write(CHAR_LT);
-		writer.write(localName);
-
-		for (int i = 0; i < atts.getLength(); i++) {
-			if ("endSlash".equals(atts.getQName(i))) {
-				endSlash = true;
-				continue;
-			}
-			writer.write(CHAR_SP);
-			writer.write(atts.getLocalName(i));
-			String value = atts.getValue(i);
-			if (value == null) {
-				continue;
-			}
-			writer.write(CHAR_EQ);
-			writer.write('"');
-			writer.write(value);
-			writer.write('"');
-		}
-
-		if (endSlash) {
-			writer.write("/");
-		}
-		writer.write(CHAR_GT);
-	}
-
-	public void startPrefixMapping(String s, String s1) throws SAXException {
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/Html5SerializerFactory.java b/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/Html5SerializerFactory.java
deleted file mode 100644
index db8cdef..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/Html5SerializerFactory.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.rewriter;
-
-import org.apache.sling.caconfig.resource.ConfigurationResourceResolver;
-import org.apache.sling.rewriter.Serializer;
-import org.apache.sling.rewriter.SerializerFactory;
-import org.osgi.framework.Constants;
-import org.osgi.service.component.annotations.Component;
-import org.osgi.service.component.annotations.Reference;
-
-/**
- * This sax serializer serializes HTML5 Compliant Markup
- */
-@Component(service = SerializerFactory.class, property = { Constants.SERVICE_VENDOR + "=The Apache Software Foundation",
-		"pipeline.type=html5-serializer" })
-public class Html5SerializerFactory implements SerializerFactory {
-
-	@Reference
-	private ConfigurationResourceResolver resolver;
-
-	/**
-	 * @see org.apache.sling.rewriter.SerializerFactory#createSerializer()
-	 */
-	@Override
-	public Serializer createSerializer() {
-		return new HTML5Serializer(resolver);
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/ReferenceMappingTransformer.java b/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/ReferenceMappingTransformer.java
deleted file mode 100644
index aeb4614..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/ReferenceMappingTransformer.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.rewriter;
-
-import java.io.IOException;
-
-import org.apache.commons.lang.ArrayUtils;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.caconfig.resource.ConfigurationResourceResolver;
-import org.apache.sling.cms.CMSConstants;
-import org.apache.sling.rewriter.ProcessingComponentConfiguration;
-import org.apache.sling.rewriter.ProcessingContext;
-import org.apache.sling.rewriter.Transformer;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xml.sax.Attributes;
-import org.xml.sax.ContentHandler;
-import org.xml.sax.Locator;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.AttributesImpl;
-
-/**
- * A Sling Rewriter Transformer which maps references to images, links, etc that
- * are contained in the Sling repository.
- */
-public class ReferenceMappingTransformer implements Transformer {
-
-	private static final Logger log = LoggerFactory.getLogger(ReferenceMappingTransformer.class);
-
-	private ContentHandler contentHandler;
-
-	private SlingHttpServletRequest slingRequest;
-
-	private ReferenceMappingTransformerConfig config;
-
-	private boolean enabled = false;
-
-	private ConfigurationResourceResolver resolver;
-
-	private String[] attributes;
-
-	public ReferenceMappingTransformer(ReferenceMappingTransformerConfig config,
-			ConfigurationResourceResolver resolver) {
-		this.config = config;
-		this.resolver = resolver;
-	}
-
-	@Override
-	public void setDocumentLocator(Locator locator) {
-		contentHandler.setDocumentLocator(locator);
-	}
-
-	@Override
-	public void startDocument() throws SAXException {
-		contentHandler.startDocument();
-	}
-
-	@Override
-	public void endDocument() throws SAXException {
-		contentHandler.endDocument();
-	}
-
-	@Override
-	public void startPrefixMapping(String prefix, String uri) throws SAXException {
-		contentHandler.startPrefixMapping(prefix, uri);
-	}
-
-	@Override
-	public void endPrefixMapping(String prefix) throws SAXException {
-		contentHandler.endPrefixMapping(prefix);
-	}
-
-	@Override
-	public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException {
-		atts = mapReferences(atts);
-		contentHandler.startElement(uri, localName, qName, atts);
-	}
-
-	private Attributes mapReferences(Attributes atts) {
-		if (enabled) {
-			AttributesImpl newAtts = new AttributesImpl();
-			for (int i = 0; i < atts.getLength(); i++) {
-				String value = null;
-				if (ArrayUtils.contains(attributes, atts.getLocalName(i).toLowerCase())
-						&& atts.getValue(i).startsWith("/")) {
-					log.trace("Updating attribute {}", atts.getLocalName(i));
-					value = slingRequest.getResourceResolver().map(slingRequest, atts.getValue(i));
-					log.trace("Mapped value {}", value);
-				} else {
-					log.trace("Skipping attribute {}", atts.getLocalName(i));
-					value = atts.getValue(i);
-				}
-				newAtts.addAttribute(atts.getURI(i), atts.getLocalName(i), atts.getQName(i), atts.getType(i), value);
-			}
-			return newAtts;
-		} else {
-			return atts;
-		}
-	}
-
-	@Override
-	public void endElement(String uri, String localName, String qName) throws SAXException {
-		contentHandler.endElement(uri, localName, qName);
-	}
-
-	@Override
-	public void characters(char[] ch, int start, int length) throws SAXException {
-		contentHandler.characters(ch, start, length);
-	}
-
-	@Override
-	public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException {
-		contentHandler.ignorableWhitespace(ch, start, length);
-	}
-
-	@Override
-	public void processingInstruction(String target, String data) throws SAXException {
-		contentHandler.processingInstruction(target, data);
-	}
-
-	@Override
-	public void skippedEntity(String name) throws SAXException {
-		contentHandler.skippedEntity(name);
-	}
-
-	@Override
-	public void dispose() {
-	}
-
-	@Override
-	public void init(ProcessingContext context, ProcessingComponentConfiguration cfg) throws IOException {
-		log.trace("init");
-		slingRequest = context.getRequest();
-
-		// make sure that the configuration is specified and that we're not currently in
-		// edit mode
-		if (config != null && config.enabledPaths() != null
-				&& !"true".equals(slingRequest.getAttribute(CMSConstants.ATTR_EDIT_ENABLED))) {
-			for (String enabledPath : config.enabledPaths()) {
-				if (slingRequest.getResource().getPath().startsWith(enabledPath)) {
-					enabled = true;
-					break;
-				}
-			}
-			Resource configResource = resolver.getResource(slingRequest.getResource(), "site", "rewrite");
-			attributes = configResource.getValueMap().get("attributes", String[].class);
-		}
-	}
-
-	@Override
-	public void setContentHandler(ContentHandler handler) {
-		this.contentHandler = handler;
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/ReferenceMappingTransformerConfig.java b/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/ReferenceMappingTransformerConfig.java
deleted file mode 100644
index e2984b8..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/ReferenceMappingTransformerConfig.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.rewriter;
-
-import org.osgi.service.metatype.annotations.ObjectClassDefinition;
-import org.osgi.service.metatype.annotations.AttributeDefinition;
-
-/**
- * Configuration for the Reference Mapping Transformer
- */
-@ObjectClassDefinition(name = "%reference.mapping.transformer.name", description = "%reference.mapping.transformer.description", localization = "OSGI-INF/l10n/bundle")
-public @interface ReferenceMappingTransformerConfig {
-
-	@AttributeDefinition(name = "%enabledPaths.name", description = "%enabledPaths.description", defaultValue = {
-			"/content" })
-	String[] enabledPaths();
-
-}
\ No newline at end of file
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/ReferenceMappingTransformerFactory.java b/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/ReferenceMappingTransformerFactory.java
deleted file mode 100644
index ff3a928..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/rewriter/ReferenceMappingTransformerFactory.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.rewriter;
-
-import org.apache.sling.caconfig.resource.ConfigurationResourceResolver;
-import org.apache.sling.rewriter.Transformer;
-import org.apache.sling.rewriter.TransformerFactory;
-import org.osgi.service.component.annotations.Activate;
-import org.osgi.service.component.annotations.Component;
-import org.osgi.service.component.annotations.ConfigurationPolicy;
-import org.osgi.service.component.annotations.Reference;
-import org.osgi.service.metatype.annotations.Designate;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * A TransformerFactory service instance for creating a Transformer to rewrite
- * all of the links, images, etc which reference other content in the Sling
- * repository.
- */
-@Component(property = { "pipeline.type=referencemapping" }, service = {
-		TransformerFactory.class }, configurationPolicy = ConfigurationPolicy.REQUIRE)
-@Designate(ocd = ReferenceMappingTransformerConfig.class)
-public class ReferenceMappingTransformerFactory implements TransformerFactory {
-
-	private static final Logger log = LoggerFactory.getLogger(ReferenceMappingTransformerFactory.class);
-	private ReferenceMappingTransformerConfig config;
-
-	@Reference
-	private ConfigurationResourceResolver resolver;
-
-	
-	@Activate
-    public void activate(ReferenceMappingTransformerConfig config) {
-        this.config = config;
-    }
-	
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.apache.sling.rewriter.TransformerFactory#createTransformer()
-	 */
-	@Override
-	public Transformer createTransformer() {
-		log.trace("createTransformer");
-		return new ReferenceMappingTransformer(config, resolver);
-	}
-
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/servlets/CMSPageServlet.java b/cms/core/src/main/java/org/apache/sling/cms/core/servlets/CMSPageServlet.java
deleted file mode 100644
index 099fdae..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/servlets/CMSPageServlet.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.core.servlets;
-
-import java.io.IOException;
-
-import javax.servlet.RequestDispatcher;
-import javax.servlet.Servlet;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.jackrabbit.JcrConstants;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.SlingHttpServletResponse;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.api.servlets.HttpConstants;
-import org.apache.sling.api.servlets.SlingSafeMethodsServlet;
-import org.osgi.service.component.annotations.Component;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Servlet which includes the content of the page when the page is accessed.
- */
-@Component(service = { Servlet.class }, property = { "sling.servlet.resourceTypes=sling:Page",
-		"sling.servlet.methods=" + HttpConstants.METHOD_TRACE, "sling.servlet.methods=" + HttpConstants.METHOD_GET,
-		"sling.servlet.methods=" + HttpConstants.METHOD_OPTIONS, "sling.servlet.methods=" + HttpConstants.METHOD_HEAD })
-public class CMSPageServlet extends SlingSafeMethodsServlet {
-
-	private static final long serialVersionUID = -410942682163323725L;
-	private static final Logger log = LoggerFactory.getLogger(CMSPageServlet.class);
-
-	protected void doGet(SlingHttpServletRequest request, SlingHttpServletResponse response)
-			throws ServletException, IOException {
-		Resource contentResource = request.getResourceResolver().getResource(request.getResource(),
-				JcrConstants.JCR_CONTENT);
-		if (contentResource == null) {
-			log.error("No countent for page {}", request.getResource());
-			response.sendError(HttpServletResponse.SC_NOT_FOUND, "no content");
-			return;
-		}
-		RequestDispatcher requestDispatcher = request.getRequestDispatcher(contentResource);
-		if (requestDispatcher != null) {
-			requestDispatcher.include(request, response);
-			return;
-		} else {
-			log.error("Failed to get request dispatcher for content of {}", request.getResource());
-			throw new ServletException("No Content");
-		}
-	}
-}
diff --git a/cms/core/src/main/java/org/apache/sling/cms/core/servlets/VersionInfoServlet.java b/cms/core/src/main/java/org/apache/sling/cms/core/servlets/VersionInfoServlet.java
deleted file mode 100644
index 6b427cc..0000000
--- a/cms/core/src/main/java/org/apache/sling/cms/core/servlets/VersionInfoServlet.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.sling.cms.core.servlets;
-
-import java.io.IOException;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import javax.jcr.Node;
-import javax.jcr.Property;
-import javax.jcr.RepositoryException;
-import javax.jcr.version.Version;
-import javax.jcr.version.VersionHistory;
-import javax.jcr.version.VersionIterator;
-import javax.json.Json;
-import javax.json.JsonArrayBuilder;
-import javax.json.JsonObject;
-import javax.json.JsonObjectBuilder;
-import javax.servlet.Servlet;
-import javax.servlet.ServletException;
-
-import org.apache.jackrabbit.JcrConstants;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.SlingHttpServletResponse;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.api.servlets.SlingSafeMethodsServlet;
-import org.osgi.service.component.annotations.Component;
-import org.osgi.service.component.annotations.ConfigurationPolicy;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * The <code>VersionInfoServlet</code> renders list of versions available for
- * the current resource.
- *
- * At the moment only JCR nodes are supported.
- */
-@Component(service = Servlet.class, property = { "service.description=Sling CMS version info servlet",
-		"service.vendor=The Apache Software Foundation",
-		"sling.servlet.resourceTypes=sling-cms/components/cms/versionmanager", "sling.servlet.methods=GET",
-		"sling.servlet.selectors=VI", "sling.servlet.extensions=json" }, immediate = true)
-public class VersionInfoServlet extends SlingSafeMethodsServlet {
-
-	private static final Logger log = LoggerFactory.getLogger(VersionInfoServlet.class);
-
-	private static final long serialVersionUID = 2980892473913646093L;
-
-	@Override
-	public void doGet(SlingHttpServletRequest req, SlingHttpServletResponse resp) throws ServletException, IOException {
-		log.trace("doGet");
-		resp.setContentType(req.getResponseContentType());
-		resp.setCharacterEncoding("UTF-8");
-
-		try {
-			resp.getWriter().write(getJsonObject(req.getRequestPathInfo().getSuffixResource()).toString());
-		} catch (Exception e) {
-			throw new ServletException(e);
-		}
-	}
-
-	private JsonObject getJsonObject(Resource resource) throws RepositoryException {
-		log.debug("Loading version history from {}", resource);
-		final JsonObjectBuilder result = Json.createObjectBuilder();
-		final Node node = resource.adaptTo(Node.class);
-		if (node == null || !node.isNodeType(JcrConstants.MIX_VERSIONABLE)) {
-			return result.build();
-		}
-
-		final VersionHistory history = node.getVersionHistory();
-		final Version baseVersion = node.getBaseVersion();
-		for (final VersionIterator it = history.getAllVersions(); it.hasNext();) {
-			final Version v = it.nextVersion();
-			final JsonObjectBuilder obj = Json.createObjectBuilder();
-			obj.add("created", createdDate(v));
-			obj.add("successors", getArrayBuilder(getNames(v.getSuccessors())));
-			obj.add("predecessors", getArrayBuilder(getNames(v.getPredecessors())));
-
-			obj.add("labels", getArrayBuilder(history.getVersionLabels(v)));
-			obj.add("baseVersion", baseVersion.isSame(v));
-			result.add(v.getName(), obj);
-		}
-
-		return Json.createObjectBuilder().add("versions", result).build();
-	}
-
-	private JsonArrayBuilder getArrayBuilder(String[] values) {
-		JsonArrayBuilder builder = Json.createArrayBuilder();
-
-		for (String value : values) {
-			builder.add(value);
-		}
-
-		return builder;
-	}
-
-	private JsonArrayBuilder getArrayBuilder(Collection<String> values) {
-		JsonArrayBuilder builder = Json.createArrayBuilder();
-
-		for (String value : values) {
-			builder.add(value);
-		}
-
-		return builder;
-	}
-
-	private static Collection<String> getNames(Version[] versions) throws RepositoryException {
-		final List<String> result = new ArrayList<>();
-		for (Version s : versions) {
-			result.add(s.getName());
-		}
-		return result;
-	}
-
-	private static String createdDate(Node node) throws RepositoryException {
-		Property prop = node.getProperty(JcrConstants.JCR_CREATED);
-		if (prop != null) {
-			return new SimpleDateFormat("EEE MMM dd yyyy HH:mm:ss 'GMT'Z").format(prop.getDate().getTime());
-		} else {
-			return "";
-		}
-	}
-
-}
diff --git a/cms/core/src/main/resources/OSGI-INF/l10n/bundle.properties b/cms/core/src/main/resources/OSGI-INF/l10n/bundle.properties
deleted file mode 100644
index c35d1be..0000000
--- a/cms/core/src/main/resources/OSGI-INF/l10n/bundle.properties
+++ /dev/null
@@ -1,65 +0,0 @@
-#
-#  Licensed to the Apache Software Foundation (ASF) under one
-#  or more contributor license agreements.  See the NOTICE file
-#  distributed with this work for additional information
-#  regarding copyright ownership.  The ASF licenses this file
-#  to you under the Apache License, Version 2.0 (the
-#  "License"); you may not use this file except in compliance
-#  with the License.  You may obtain a copy of the License at
-#
-#   http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing,
-#  software distributed under the License is distributed on an
-#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-#  KIND, either express or implied.  See the License for the
-#  specific language governing permissions and limitations
-#  under the License.
-#
-
-#
-# This file contains localization strings for configuration labels and
-# descriptions as used in the metatype.xml descriptor generated by the
-# the Sling SCR plugin
-
-## CMS Security Filter Entries
-cms.security.filter.name=Apache Sling CMS Security Filter
-cms.security.filter.description=Checks to ensure that the user is logged in \
-for requests which otherwise would be allowed when accessing through a \
-CMS-specific domain name.
-
-hostDomains.name=Host Domains
-hostDomains.description=Only requests to domains in this list will be checked \
-by the filter, if not specified, the filter will be disabled
-
-allowedPatterns.name=Allowed Patterns
-allowedPatterns.description=Requests to URIs matching any of the defined \
-patterns will be allowed regardless of the logged in state / group \
-membership of the user
-
-group.name=Group
-group.description=Optional group ID, if specified the filter will only allow \
-requests to users which are members of the specified group, if not specified \
-users will only be checked to be in a logged in state
-
-## Reference Mapping Transformer Entries
-reference.mapping.transformer.name=Apache Sling CMS Reference Mapping Transformer
-reference.mapping.transformer.description=Transforms resource references in HTML \
-attributes using Sling Mappings
-
-enabledPaths.name=Enabled Paths
-enabledPaths.description=Paths under which this transformer will be enabled
-
-# Name Generator Entries
-cms.name.generator.name=Apache Sling CMS Property Hint Name Generator
-cms.name.generator.description=Node Name generator for the Sling Post servlet \
-which uses the value of a named node for generating the name of a newly created \
-node
-
-allowed.chars.name=Allowed Characters
-allowed.chars.description=A list of allowed characters for the name of the new \
-nodes when using the Property Name Hint Name Generator
-
-replacement.char.name=Replacement Character
-replacement.char.description=A character with which to replace any non-allowed \
-characters in the name 
\ No newline at end of file
diff --git a/cms/docker/Dockerfile b/cms/docker/Dockerfile
deleted file mode 100644
index 488caad..0000000
--- a/cms/docker/Dockerfile
+++ /dev/null
@@ -1,55 +0,0 @@
-#
-#		 Licensed to the Apache Software Foundation (ASF) under one or more contributor license
-#        agreements. See the NOTICE file distributed with this work for additional information
-#        regarding copyright ownership. The ASF licenses this file to you under the Apache License,
-#        Version 2.0 (the "License"); you may not use this file except in compliance with the
-#        License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
-#        Unless required by applicable law or agreed to in writing, software distributed under the
-#        License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
-#        either express or implied. See the License for the specific language governing permissions
-#        and limitations under the License.
-#
-# Apache Sling CMS Dockerfile
-#
-# https://github.com/whiteboard/cms/docker
-#
-
-# Pull base image.
-FROM openjdk:8-jre
-MAINTAINER dev@sling.apache.org
-
-# Configure directories
-WORKDIR /opt/sling
-VOLUME /opt/sling/sling
-
-# Setup Sling CMS
-RUN mkdir -p /opt/sling
-RUN wget https://repository.apache.org/content/repositories/snapshots/org/apache/sling/org.apache.sling.cms.builder/1.0.0-SNAPSHOT/org.apache.sling.cms.builder-1.0.0-20180512.031838-12.jar
-ENV JAVA_OPTS -Xmx512m
-ENV SLING_OPTS ''
-
-# Install Apache
-RUN apt-get update 
-RUN apt-get install apache2 -y
-
-# Configure mod_proxy
-RUN a2enmod proxy
-RUN a2enmod proxy_http
-
-# Configure mod_cache and mod_expire
-RUN a2enmod cache
-RUN a2enmod cache_disk
-RUN a2enmod expires
-RUN a2enmod headers
-
-# Configure sites
-RUN mkdir -p /var/www/vhosts/sling-cms
-RUN mkdir -p /var/www/vhosts/sling
-COPY cms.conf /etc/apache2/sites-enabled
-COPY site.conf /etc/apache2/sites-enabled
-
-# Expose endpoints
-EXPOSE 80 443
-
-# Background Apache httpd and start Sling CMS
-CMD exec service apache2 start & service apache-htcacheclean start & java $JAVA_OPTS -jar org.apache.sling.cms.jar $SLING_OPTS
diff --git a/cms/docker/cache_disk.conf b/cms/docker/cache_disk.conf
deleted file mode 100644
index 922f1fe..0000000
--- a/cms/docker/cache_disk.conf
+++ /dev/null
@@ -1,17 +0,0 @@
-#
-#		 Licensed to the Apache Software Foundation (ASF) under one or more contributor license
-#        agreements. See the NOTICE file distributed with this work for additional information
-#        regarding copyright ownership. The ASF licenses this file to you under the Apache License,
-#        Version 2.0 (the "License"); you may not use this file except in compliance with the
-#        License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
-#        Unless required by applicable law or agreed to in writing, software distributed under the
-#        License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
-#        either express or implied. See the License for the specific language governing permissions
-#        and limitations under the License.
-#
-
-<IfModule mod_cache_disk.c>
-    CacheDirLevels 2
-    CacheDirLength 1
-    CacheRoot /var/cache/apache2/mod_cache_disk
-</IfModule>
\ No newline at end of file
diff --git a/cms/docker/cms.conf b/cms/docker/cms.conf
deleted file mode 100644
index 24d3be6..0000000
--- a/cms/docker/cms.conf
+++ /dev/null
@@ -1,22 +0,0 @@
-#
-#		 Licensed to the Apache Software Foundation (ASF) under one or more contributor license
-#        agreements. See the NOTICE file distributed with this work for additional information
-#        regarding copyright ownership. The ASF licenses this file to you under the Apache License,
-#        Version 2.0 (the "License"); you may not use this file except in compliance with the
-#        License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
-#        Unless required by applicable law or agreed to in writing, software distributed under the
-#        License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
-#        either express or implied. See the License for the specific language governing permissions
-#        and limitations under the License.
-#
-
-<VirtualHost *:80>
-   ServerName cms.sling.apache.org
-   DocumentRoot /var/www/vhosts/sling-cms
-   ErrorLog /var/log/apache2/sling-cms-err.log
-   TransferLog /var/log/apache2/sling-cms-access.log
-   
-   ProxyPass /.well-known !
-   ProxyPass / http://localhost:8080/
-   ProxyPassReverse / http://localhost:8080/
-</VirtualHost>
diff --git a/cms/docker/site.conf b/cms/docker/site.conf
deleted file mode 100644
index 3183c24..0000000
--- a/cms/docker/site.conf
+++ /dev/null
@@ -1,49 +0,0 @@
-#
-#		 Licensed to the Apache Software Foundation (ASF) under one or more contributor license
-#        agreements. See the NOTICE file distributed with this work for additional information
-#        regarding copyright ownership. The ASF licenses this file to you under the Apache License,
-#        Version 2.0 (the "License"); you may not use this file except in compliance with the
-#        License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
-#        Unless required by applicable law or agreed to in writing, software distributed under the
-#        License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
-#        either express or implied. See the License for the specific language governing permissions
-#        and limitations under the License.
-#
-
-<VirtualHost *:80>
-   ServerName sling2.apache.org
-   DocumentRoot /var/www/vhosts/sling
-   ErrorLog /var/log/apache2/sling-err.log
-   TransferLog /var/log/apache2/sling-access.log
-   
-   ProxyPass /.well-known !
-   
-   ProxyPass /etc/clientlibs/reference/ http://localhost:8080/etc/clientlibs/reference/
-   ProxyPassReverse /etc/clientlibs/reference/ http://localhost:8080/etc/clientlibs/reference/
-   
-   ProxyPass / http://localhost:8080/content/sling-apache-org/
-   ProxyPassReverse / http://localhost:8080/content/sling-apache-org/
-   
-   # Configure mod_cache
-   CacheQuickHandler off
-   CacheLock on
-   CacheLockPath /tmp/mod_cache-lock/sling
-   CacheLockMaxAge 5
-   CacheDefaultExpire 600
-   CacheMaxExpire 604800
-   CacheIgnoreHeaders Set-Cookie
-   CacheLastModifiedFactor 0.5
-   
-   # Configure mod_expire
-   ExpiresDefault A300
-   ExpiresByType text/html A300
-   ExpiresByType application/json A10
-   ExpiresByType image/gif A604800
-   ExpiresByType image/jpeg A604800
-   ExpiresByType image/png A604800
-   ExpiresByType text/css A604800
-   ExpiresByType text/javascript A604800
-   ExpiresByType application/javascript A604800
-   ExpiresByType text/html A604800
-   ExpiresByType text/html A604800
-</VirtualHost>
diff --git a/cms/pom.xml b/cms/pom.xml
deleted file mode 100644
index 2abf2be..0000000
--- a/cms/pom.xml
+++ /dev/null
@@ -1,142 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
-	license agreements. See the NOTICE file distributed with this work for additional 
-	information regarding copyright ownership. The ASF licenses this file to 
-	you under the Apache License, Version 2.0 (the "License"); you may not use 
-	this file except in compliance with the License. You may obtain a copy of 
-	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
-	by applicable law or agreed to in writing, software distributed under the 
-	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
-	OF ANY KIND, either express or implied. See the License for the specific 
-	language governing permissions and limitations under the License. -->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<groupId>org.apache.sling</groupId>
-		<artifactId>sling</artifactId>
-		<version>33</version>
-		<relativePath />
-	</parent>
-
-	<artifactId>org.apache.sling.cms</artifactId>
-	<name>Apache Sling - CMS</name>
-	<version>1.0.0-SNAPSHOT</version>
-	<packaging>pom</packaging>
-
-	<properties>
-		<sling.protocol>http</sling.protocol>
-		<sling.host>localhost</sling.host>
-		<sling.port>8080</sling.port>
-		<sling.username>admin</sling.username>
-		<sling.password>admin</sling.password>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-		<maven.compiler.source>1.8</maven.compiler.source>
-		<maven.compiler.target>1.8</maven.compiler.target>
-	</properties>
-
-	<modules>
-		<module>core</module>
-		<module>ui</module>
-		<module>reference</module>
-		<module>builder</module>
-	</modules>
-
-	<dependencyManagement>
-		<dependencies>
-			<dependency>
-				<groupId>org.apache.geronimo.specs</groupId>
-				<artifactId>geronimo-atinject_1.0_spec</artifactId>
-				<version>1.0</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>javax.servlet</groupId>
-				<artifactId>servlet-api</artifactId>
-				<version>2.5</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.api</artifactId>
-				<version>2.8.0</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.servlets.post</artifactId>
-				<version>2.3.22</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.models.api</artifactId>
-				<version>1.3.6</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.jackrabbit</groupId>
-				<artifactId>jackrabbit-jcr-commons</artifactId>
-				<version>2.7.5</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.jcr.resource</artifactId>
-				<version>2.3.8</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>commons-lang</groupId>
-				<artifactId>commons-lang</artifactId>
-				<version>2.6</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>commons-io</groupId>
-				<artifactId>commons-io</artifactId>
-				<version>1.4</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.rewriter</artifactId>
-				<version>1.0.4</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.cocoon</groupId>
-				<artifactId>cocoon-serializers-charsets</artifactId>
-				<version>1.0.2</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.geronimo.bundles</groupId>
-				<artifactId>jstl</artifactId>
-				<version>1.2_1</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.caconfig.api</artifactId>
-				<version>1.0.0</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.jackrabbit</groupId>
-				<artifactId>jackrabbit-api</artifactId>
-				<version>2.14.4</version>
-				<scope>provided</scope>
-			</dependency>
-			<dependency>
-				<groupId>org.apache.sling</groupId>
-				<artifactId>org.apache.sling.jcr.base</artifactId>
-				<version>2.0.6</version>
-				<scope>provided</scope>
-			</dependency>
-		</dependencies>
-	</dependencyManagement>
-
-</project>
\ No newline at end of file
diff --git a/cms/reference/pom.xml b/cms/reference/pom.xml
deleted file mode 100644
index 800a101..0000000
--- a/cms/reference/pom.xml
+++ /dev/null
@@ -1,151 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
-	license agreements. See the NOTICE file distributed with this work for additional 
-	information regarding copyright ownership. The ASF licenses this file to 
-	you under the Apache License, Version 2.0 (the "License"); you may not use 
-	this file except in compliance with the License. You may obtain a copy of 
-	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
-	by applicable law or agreed to in writing, software distributed under the 
-	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
-	OF ANY KIND, either express or implied. See the License for the specific 
-	language governing permissions and limitations under the License. -->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<artifactId>org.apache.sling.cms</artifactId>
-		<groupId>org.apache.sling</groupId>
-		<version>1.0.0-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.apache.sling.cms.reference</artifactId>
-	<packaging>bundle</packaging>
-	<name>Apache Sling - CMS Reference Application</name>
-
-	<build>
-		<plugins>
-			<plugin>
-				<artifactId>maven-resources-plugin</artifactId>
-				<executions>
-					<execution>
-						<id>copy-resources</id>
-						<phase>validate</phase>
-						<goals>
-							<goal>copy-resources</goal>
-						</goals>
-						<configuration>
-							<outputDirectory>${basedir}/${frontend.target}</outputDirectory>
-							<resources>
-								<resource>
-									<directory>src/main/frontend</directory>
-								</resource>
-							</resources>
-						</configuration>
-					</execution>
-				</executions>
-			</plugin>
-			<plugin>
-				<groupId>org.apache.felix</groupId>
-				<artifactId>maven-bundle-plugin</artifactId>
-				<extensions>true</extensions>
-				<configuration>
-					<instructions>
-						<Sling-Initial-Content>
-							jcr_root,
-							jcr_root/apps/reference;overwrite:=true;uninstall:=true;path:=/apps/reference,
-							jcr_root/content/apache;overwrite:=false;uninstall:=false;path:=/content/apache,
-							jcr_root/etc/taxonomy/reference;overwrite:=false;uninstall:=false;path:=/etc/taxonomy/reference,
-							jcr_root/static/clientlibs/reference;overwrite=true;ignoreImportProviders:=xml;path:=/static/clientlibs/reference
-						</Sling-Initial-Content>
-						<Sling-Model-Packages>
-							org.apache.sling.cms.reference.models
-						</Sling-Model-Packages>
-					</instructions>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
-
-	<dependencies>
-		<dependency>
-			<groupId>org.apache.sling</groupId>
-			<artifactId>org.apache.sling.cms.core</artifactId>
-			<version>1.0.0-SNAPSHOT</version>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.geronimo.specs</groupId>
-			<artifactId>geronimo-atinject_1.0_spec</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>javax.servlet</groupId>
-			<artifactId>servlet-api</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.osgi</groupId>
-			<artifactId>org.osgi.service.component.annotations</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.osgi</groupId>
-			<artifactId>org.osgi.service.metatype.annotations</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.osgi</groupId>
-			<artifactId>osgi.core</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.osgi</groupId>
-			<artifactId>osgi.cmpn</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>javax.jcr</groupId>
-			<artifactId>jcr</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.sling</groupId>
-			<artifactId>org.apache.sling.api</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.slf4j</groupId>
-			<artifactId>slf4j-api</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.sling</groupId>
-			<artifactId>org.apache.sling.models.api</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>commons-lang</groupId>
-			<artifactId>commons-lang</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.apache.jackrabbit</groupId>
-			<artifactId>jackrabbit-jcr-commons</artifactId>
-		</dependency>
-	</dependencies>
-
-	<profiles>
-		<profile>
-			<id>autoInstallBundle</id>
-			<build>
-				<plugins>
-					<plugin>
-						<groupId>org.apache.sling</groupId>
-						<artifactId>maven-sling-plugin</artifactId>
-						<executions>
-							<execution>
-								<id>install-bundle</id>
-								<goals>
-									<goal>install</goal>
-								</goals>
-								<configuration>
-									<slingUrl>${sling.protocol}://${sling.host}:${sling.port}/system/console</slingUrl>
-									<user>${sling.username}</user>
-									<password>${sling.password}</password>
-								</configuration>
-							</execution>
-						</executions>
-					</plugin>
-				</plugins>
-			</build>
-		</profile>
-	</profiles>
-</project>
\ No newline at end of file
diff --git a/cms/reference/src/main/java/org/apache/sling/cms/reference/models/ItemList.java b/cms/reference/src/main/java/org/apache/sling/cms/reference/models/ItemList.java
deleted file mode 100644
index 231e298..0000000
--- a/cms/reference/src/main/java/org/apache/sling/cms/reference/models/ItemList.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.reference.models;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.*;
-
-import javax.annotation.PostConstruct;
-import javax.jcr.query.Query;
-
-import org.apache.commons.lang.StringUtils;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.injectorspecific.RequestAttribute;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Model for retrieving a list of items from the Sling repository using a JCR
- * SQL2 query.
- */
-@Model(adaptables = SlingHttpServletRequest.class)
-public class ItemList {
-
-	private static final Logger log = LoggerFactory.getLogger(List.class);
-
-	private int count;
-
-	private int end;
-
-	@RequestAttribute
-	private String limit;
-
-	private int page;
-
-	private Integer[] pages;
-
-	@RequestAttribute
-	private String query;
-
-	private SlingHttpServletRequest request;
-
-	private List<Resource> items = new ArrayList<Resource>();
-
-	private int start;
-
-	public ItemList(SlingHttpServletRequest request) {
-		this.request = request;
-	}
-
-	public int getCount() {
-		return count;
-	}
-
-	public int getCurrentPage() {
-		return page + 1;
-	}
-
-	public int getEnd() {
-		return end;
-	}
-
-	public Integer[] getPages() {
-		return pages;
-	}
-
-	public String getQuery() {
-		return query;
-	}
-
-	public List<Resource> getItems() {
-		return items;
-	}
-
-	public int getStart() {
-		return start;
-	}
-
-	@PostConstruct
-	public void init() {
-
-		log.trace("init");
-
-		Set<String> distinct = new HashSet<String>();
-
-		if (request.getRequestPathInfo().getSuffix() != null) {
-			query = query.replace("{SUFFIX}", request.getRequestPathInfo().getSuffix());
-		}
-		log.debug("Listing results of: {}", query);
-
-		Iterator<Resource> res = request.getResourceResolver().findResources(query, Query.JCR_SQL2);
-		while (res.hasNext()) {
-			Resource result = res.next();
-			if (!distinct.contains(result.getPath())) {
-				items.add(result);
-				distinct.add(result.getPath());
-			}
-		}
-		count = items.size();
-		log.debug("Found {} results", count);
-
-		if (StringUtils.isNotBlank(request.getParameter("page")) && request.getParameter("page").matches("\\d+")) {
-			page = Integer.parseInt(request.getParameter("page"), 10) - 1;
-			log.debug("Using page {}", page);
-		} else {
-			page = 0;
-			log.debug("Page {} not specified or not valid", request.getParameter("page"));
-		}
-
-		int limit = Integer.parseInt(this.limit, 10);
-		if (page * limit >= count) {
-			start = count;
-		} else {
-			start = page * limit;
-		}
-		log.debug("Using start {}", start);
-
-		if ((page * limit) + limit >= count) {
-			end = count;
-		} else {
-			end = (page * limit) + limit;
-		}
-		log.debug("Using end {}", end);
-		items = items.subList(start, end);
-
-		List<Integer> pgs = new ArrayList<Integer>();
-		int max = ((int) Math.ceil((double) count / limit)) + 1;
-		for (int i = 1; i < max; i++) {
-			pgs.add(i);
-		}
-		pages = pgs.toArray(new Integer[pgs.size()]);
-		log.debug("Loaded pages {}", Arrays.toString(pages));
-	}
-
-	public boolean isFirst() {
-		return page == 0;
-	}
-
-	public boolean isLast() {
-		if (pages.length > 0) {
-			return page + 1 == pages[pages.length - 1];
-		}
-		return true;
-	}
-}
diff --git a/cms/reference/src/main/java/org/apache/sling/cms/reference/models/Search.java b/cms/reference/src/main/java/org/apache/sling/cms/reference/models/Search.java
deleted file mode 100644
index 9b596af..0000000
--- a/cms/reference/src/main/java/org/apache/sling/cms/reference/models/Search.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sling.cms.reference.models;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.*;
-
-import javax.annotation.PostConstruct;
-import javax.jcr.query.Query;
-
-import org.apache.commons.lang.StringUtils;
-import org.apache.jackrabbit.util.Text;
-import org.apache.sling.api.SlingHttpServletRequest;
-import org.apache.sling.api.resource.Resource;
-import org.apache.sling.models.annotations.Model;
-import org.apache.sling.models.annotations.injectorspecific.ValueMapValue;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Model for retrieving search results and pagination based on a search of the
- * Sling CMS repository.
- */
-@Model(adaptables = SlingHttpServletRequest.class)
-public class Search {
-
-	private static final Logger log = LoggerFactory.getLogger(Search.class);
-
-	public static final String TERM_PARAMETER = "q";
-
-	@ValueMapValue
-	private String basePath;
-
-	private int count;
-
-	private int end;
-
-	@ValueMapValue
-	private int limit;
-
-	private int page;
-
-	private Integer[] pages;
-
-	private SlingHttpServletRequest request;
-
-	private List<Resource> results = new ArrayList<Resource>();
-
-	private int start;
-
-	public Search(SlingHttpServletRequest request) {
-		this.request = request;
-	}
-
-	public int getCount() {
-		return count;
-	}
-
-	public int getCurrentPage() {
-		return page + 1;
-	}
-
-	public int getEnd() {
-		return end;
-	}
-
-	public Integer[] getPages() {
-		return pages;
-	}
-
-	public List<Resource> getResults() {
-		return results;
-	}
-
-	public int getStart() {
-		return start;
-	}
-
-	public String getTerm() {
-		return request.getParameter(TERM_PARAMETER);
-	}
-
-	@PostConstruct
-	public void init() {
-
-		Set<String> distinct = new HashSet<String>();
-
-		String term = Text.escapeIllegalXpathSearchChars(request.getParameter(TERM_PARAMETER)).replaceAll("'", "''");
-
-		String query = "SELECT * FROM [sling:Page] AS p WHERE [jcr:content/published]=true AND (p.[jcr:content/hideInSitemap] IS NULL OR p.[jcr:content/hideInSitemap] <> true) AND ISDESCENDANTNODE(p, '"
-				+ basePath + "') AND CONTAINS(p.*, '" + term + "') ORDER BY [jcr:score]";
-		log.debug("Searching for pages with {} under {} with query: {}", term, basePath, query);
-		Iterator<Resource> res = request.getResourceResolver().findResources(query, Query.JCR_SQL2);
-		while (res.hasNext()) {
-			Resource result = res.next();
-			if (!distinct.contains(result.getPath())) {
-				results.add(result);
-				distinct.add(result.getPath());
-			}
-		}
-		count = results.size();
-		log.debug("Found {} results", count);
-
-		if (StringUtils.isNotBlank(request.getParameter("page")) && request.getParameter("page").matches("\\d+")) {
-			page = Integer.parseInt(request.getParameter("page"), 10) - 1;
-			log.debug("Using page {}", page);
-		} else {
-			page = 0;
-			log.debug("Page {} not specified or not valid", request.getParameter("page"));
-		}
-
-		if (page * limit >= count) {
-			start = count;
-		} else {
-			start = page * limit;
-		}
-		log.debug("Using start {}", start);
-
-		if ((page * limit) + limit >= count) {
-			end = count;
-		} else {
-			end = (page * limit) + limit;
-		}
-		log.debug("Using end {}", end);
-		results = results.subList(start, end);
-
-		List<Integer> pgs = new ArrayList<Integer>();
-		int max = ((int) Math.ceil((double) count / limit)) + 1;
-		for (int i = 1; i < max; i++) {
-			pgs.add(i);
-		}
-		pages = pgs.toArray(new Integer[pgs.size()]);
-		log.debug("Loaded pages {}", Arrays.toString(pages));
-	}
-
-	public boolean isFirst() {
-		return page == 0;
-	}
-
-	public boolean isLast() {
-		if (pages.length > 0) {
-			return page + 1 == pages[pages.length - 1];
-		}
-		return true;
-	}
-}
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/breadcrumb/breadcrumb.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/breadcrumb/breadcrumb.jsp
deleted file mode 100644
index 1770d0b..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/breadcrumb/breadcrumb.jsp
+++ /dev/null
@@ -1,32 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
- <sling:adaptTo adaptable="${resource}" adaptTo="org.apache.sling.cms.core.models.PageManager" var="pageMgr" />
-<a href="/">
-	Home
-</a>&nbsp;�&nbsp;
-<c:if test="${not empty properties.level}">
-	<c:forEach var="parent" items="${sling:getParents(pageMgr.page.resource,properties.level)}">
-		<c:if test="${parent.path != page.resource.path}">
-			<a href="${parent.path}.html">
-				<sling:encode value="${parent.valueMap['jcr:content/jcr:title']}" default="${parent.name}" mode="HTML" />
-			</a>&nbsp;�&nbsp;
-		</c:if>
-	</c:forEach>
-</c:if>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/breadcrumb/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/breadcrumb/edit.json
deleted file mode 100644
index e0cb485..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/breadcrumb/edit.json
+++ /dev/null
@@ -1,23 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save Breadcrumb",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"level": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Level",
-			"name": "level",
-			"required": true,
-			"type": "number"
-		},
-		"levelTypeHint": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/hidden",
-			"name": "level@TypeHint",
-			"value": "Long"
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/codeblock.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/codeblock.json
deleted file mode 100644
index e6fbe73..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/codeblock.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-    "jcr:primaryType" : "sling:Component",
-    "jcr:title": "Code Block",
-    "componentType": "General"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/codeblock/codeblock.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/codeblock/codeblock.jsp
deleted file mode 100644
index 0383669..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/codeblock/codeblock.jsp
+++ /dev/null
@@ -1,20 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
-<%@include file="/libs/sling-cms/global.jsp" %>
-<pre>${properties.code} </pre>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/codeblock/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/codeblock/edit.json
deleted file mode 100644
index d3ff62f..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/codeblock/edit.json
+++ /dev/null
@@ -1,16 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save Code Block",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"code": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/textarea",
-			"label": "Code",
-			"name": "code",
-			"required": true
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol.json
deleted file mode 100644
index d4c890b..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-	"jcr:primaryType": "sling:Component",
-    "componentType": "General",
-    "jcr:title": "Column Control"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/columncontrol.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/columncontrol.jsp
deleted file mode 100644
index bae2d5a..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/columncontrol.jsp
+++ /dev/null
@@ -1,44 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
- <c:choose>
- 	<c:when test="${properties.container == true}">
- 		<sling:adaptTo var="pageMgr" adaptable="${resource}" adaptTo="org.apache.sling.cms.core.models.PageManager" />
-		<c:set var="configRsrc" value="${pageMgr.page.template.componentConfigs['reference/components/general/columncontrol']}" />
- 		<div class="${configRsrc.valueMap.containerclass}">
- 			<div class="row">
-				<c:forEach var="col" items="${fn:split(properties.layout,',')}" varStatus="status">
-					<div class="${sling:encode(col,'HTML_ATTR')}">
-						<sling:include path="col-${status.index}" resourceType="sling-cms/components/general/container" />
-					</div>
-				</c:forEach>
-			</div>
- 		</div>
- 	</c:when>
- 	<c:otherwise>
- 		<div class="row">
-			<c:forEach var="col" items="${fn:split(properties.layout,',')}" varStatus="status">
-				<div class="${sling:encode(col,'HTML_ATTR')}">
-					<sling:include path="col-${status.index}" resourceType="sling-cms/components/general/container" />
-				</div>
-			</c:forEach>
-		</div>
- 	</c:otherwise>
- </c:choose>
-
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/config.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/config.json
deleted file mode 100644
index 3032090..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/config.json
+++ /dev/null
@@ -1,19 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType" : "sling-cms/components/general/container",
-	"columns": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/repeating",
-		"label": "Columns",
-		"name": "columns",
-		"type": "text",
-		"required": true
-	},
-	"containerclass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "Container Class",
-		"name": "containerclass",
-		"required": true
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/edit.json
deleted file mode 100644
index 8fb7aa3..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/edit.json
+++ /dev/null
@@ -1,39 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"layout": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Layout",
-			"name": "layout",
-			"required": true,
-			"optionsScript": "/apps/reference/components/general/columncontrol/options.jsp"
-		},
-		"container": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Wrap In Container?",
-			"name": "container",
-			"required": true,
-			"options": {
-				"no": {
-					"label": "No",
-					"value": false
-				},
-				"yes": {
-					"label": "Yes",
-					"value": true
-				}
-			}
-		},
-		"containerTypeHint": {
-			"sling:resourceType": "sling-cms/components/editor/fields/hidden",
-			"name": "container@TypeHint",
-			"value": "Boolean"
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/options.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/options.jsp
deleted file mode 100644
index 4308c9f..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/columncontrol/options.jsp
+++ /dev/null
@@ -1,26 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<sling:adaptTo var="pageMgr" adaptable="${slingRequest.requestPathInfo.suffixResource}" adaptTo="org.apache.sling.cms.core.models.PageManager" />
-<c:set var="configRsrc" value="${pageMgr.page.template.componentConfigs['reference/components/general/columncontrol']}" />
-<c:forEach var="layout" items="${configRsrc.valueMap.columns}">
-	<option ${slingRequest.requestPathInfo.suffixResource.valueMap.layout == sling:encode(fn:split(layout,'=')[1],'HTML_ATTR') ? 'selected' : ''} value="${sling:encode(fn:split(layout,'=')[1],'HTML_ATTR')}">
-		${sling:encode(fn:split(layout,'=')[0],'HTML')}
-	</option>
-</c:forEach>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta.json
deleted file mode 100644
index b11e6a1..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-	"jcr:primaryType": "sling:Component",
-    "componentType": "General",
-    "jcr:title": "Call to Action"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/config.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/config.json
deleted file mode 100644
index f4a138e..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/config.json
+++ /dev/null
@@ -1,12 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType" : "sling-cms/components/general/container",
-	"ctaClasses": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/repeating",
-		"label": "CTA Classes",
-		"name": "ctaClasses",
-		"type": "text",
-		"required": true
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/cta.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/cta.jsp
deleted file mode 100644
index 25f57b6..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/cta.jsp
+++ /dev/null
@@ -1,24 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
-<%@include file="/libs/sling-cms/global.jsp"%>
-<c:if test="${not empty properties.href}">
-	<a href="${properties.href }" class="${properties.ctaClass}" ${target}>
-		<sling:encode value="${properties.text}" mode="HTML" />
-	</a>
-</c:if>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/edit.json
deleted file mode 100644
index e3b4890..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/edit.json
+++ /dev/null
@@ -1,50 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save CTA",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"ctaClass": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "CTA Class",
-			"name": "ctaClass",
-			"required": true,
-			"optionsScript": "/apps/reference/components/general/cta/options.jsp"
-		},
-		"text": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Text",
-			"name": "text",
-			"required": true
-		},
-		"href": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/path",
-			"basePath": "/content",
-			"type": "sling:Page",
-			"label": "CTA Link",
-			"name": "href",
-			"titleProperty": "jcr:content/jcr:title"
-		},
-		"target": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Open In New Window?",
-			"name": "target",
-			"options": {
-				"jcr:primaryType": "nt:unstructured",
-				"yes": {
-					"label": "Yes",
-					"value": " target=\"_blank\""
-				},
-				"no": {
-					"label": "No",
-					"value": ""
-				}
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/options.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/options.jsp
deleted file mode 100644
index 141ec71..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/cta/options.jsp
+++ /dev/null
@@ -1,26 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<sling:adaptTo var="pageMgr" adaptable="${slingRequest.requestPathInfo.suffixResource}" adaptTo="org.apache.sling.cms.core.models.PageManager" />
-<c:set var="configRsrc" value="${pageMgr.page.template.componentConfigs['reference/components/general/cta']}" />
-<c:forEach var="ctaClass" items="${configRsrc.valueMap.ctaClasses}">
-	<option ${slingRequest.requestPathInfo.suffixResource.valueMap.ctaClass == sling:encode(fn:split(ctaClass,'=')[1],'HTML_ATTR') ? 'selected' : ''} value="${sling:encode(fn:split(ctaClass,'=')[1],'HTML_ATTR')}">
-		${sling:encode(fn:split(ctaClass,'=')[0],'HTML')}
-	</option>
-</c:forEach>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe.json
deleted file mode 100644
index da17676..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-    "jcr:primaryType" : "sling:Component",
-    "jcr:title": "IFrame",
-    "componentType": "General"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/config.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/config.json
deleted file mode 100644
index c1bc419..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/config.json
+++ /dev/null
@@ -1,19 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType" : "sling-cms/components/general/container",
-	"wrapperClasses": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/repeating",
-		"label": "Wrapper Classes",
-		"name": "wrapperClasses",
-		"type": "text",
-		"required": true
-	},
-	"iframeClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "IFrame Class",
-		"name": "iframeClass",
-		"required": true
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/edit.json
deleted file mode 100644
index ab1062c..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/edit.json
+++ /dev/null
@@ -1,44 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save IFrame",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"src": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/path",
-			"basePath": "/content",
-			"type": "sling:File",
-			"label": "Frame Source",
-			"name": "src",
-			"titleProperty": "jcr:content/jcr:title",
-			"required": true
-		},
-		"layout": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Wrapper Class",
-			"name": "wrapperClass",
-			"required": true,
-			"optionsScript": "/apps/reference/components/general/iframe/options.jsp"
-		},
-		"allowFullscreen": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Allow Fullscreen",
-			"name": "allowFullscreen",
-			"options": {
-				"jcr:primaryType": "nt:unstructured",
-				"yes": {
-					"label": "Yes",
-					"value": " allowfullscreen=\"allowfullscreen\""
-				},
-				"no": {
-					"label": "No",
-					"value": " allowfullscreen=\"allowfullscreen\""
-				}
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/iframe.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/iframe.jsp
deleted file mode 100644
index 0e22143..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/iframe.jsp
+++ /dev/null
@@ -1,26 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
-<%@include file="/libs/sling-cms/global.jsp"%>
-<c:if test="${not empty properties.src}">
-	<sling:adaptTo var="pageMgr" adaptable="${resource}" adaptTo="org.apache.sling.cms.core.models.PageManager" />
-	<c:set var="configRsrc" value="${pageMgr.page.template.componentConfigs['reference/components/general/iframe']}" />
-	div class="${properties.wrapperClass}">
-		<iframe src="${properties.src}" class="${configRsrc.valueMap.iframeClass}" frameborder="0" ${properties.allowFullscreen}></iframe>
-	</div>
-</c:if>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/options.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/options.jsp
deleted file mode 100644
index e90ed7e..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/iframe/options.jsp
+++ /dev/null
@@ -1,26 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<sling:adaptTo var="pageMgr" adaptable="${slingRequest.requestPathInfo.suffixResource}" adaptTo="org.apache.sling.cms.core.models.PageManager" />
-<c:set var="configRsrc" value="${pageMgr.page.template.componentConfigs['reference/components/general/iframe']}" />
-<c:forEach var="wrapperClass" items="${configRsrc.valueMap.wrapperClasses}">
-	<option ${slingRequest.requestPathInfo.suffixResource.valueMap.wrapperClass == sling:encode(fn:split(wrapperClass,'=')[1],'HTML_ATTR') ? 'selected' : ''} value="${sling:encode(fn:split(wrapperClass,'=')[1],'HTML_ATTR')}">
-		${sling:encode(fn:split(wrapperClass,'=')[0],'HTML')}
-	</option>
-</c:forEach>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image.json
deleted file mode 100644
index d836ede..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-    "jcr:primaryType" : "sling:Component",
-    "jcr:title": "Image",
-    "componentType": "General"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/config.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/config.json
deleted file mode 100644
index 186deb4..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/config.json
+++ /dev/null
@@ -1,12 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType" : "sling-cms/components/general/container",
-	"imageClasses": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/repeating",
-		"label": "Image Classes",
-		"name": "imageClasses",
-		"type": "text",
-		"required": true
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/edit.json
deleted file mode 100644
index 442856f..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/edit.json
+++ /dev/null
@@ -1,34 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save Image",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"src": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/path",
-			"basePath": "/content",
-			"type": "sling:File",
-			"label": "Image Source",
-			"name": "src",
-			"titleProperty": "jcr:content/jcr:title",
-			"required": true
-		},
-		"alt": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Alt Text",
-			"name": "alt",
-			"required": true
-		},
-		"imageClass": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Image Class",
-			"name": "imageClass",
-			"required": true,
-			"optionsScript": "/apps/reference/components/general/image/options.jsp"
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/image.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/image.jsp
deleted file mode 100644
index 363ad86..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/image.jsp
+++ /dev/null
@@ -1,22 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
-<%@include file="/libs/sling-cms/global.jsp"%>
-<c:if test="${not empty properties.src}">
-	<img src="${properties.src}" alt="${properties.alt}" class="${properties.imageClass}" />
-</c:if>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/options.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/options.jsp
deleted file mode 100644
index 29eae99..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/image/options.jsp
+++ /dev/null
@@ -1,26 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<sling:adaptTo var="pageMgr" adaptable="${slingRequest.requestPathInfo.suffixResource}" adaptTo="org.apache.sling.cms.core.models.PageManager" />
-<c:set var="configRsrc" value="${pageMgr.page.template.componentConfigs['reference/components/general/image']}" />
-<c:forEach var="imageClass" items="${configRsrc.valueMap.imageClasses}">
-	<option ${slingRequest.requestPathInfo.suffixResource.valueMap.imageClass == sling:encode(fn:split(imageClass,'=')[1],'HTML_ATTR') ? 'selected' : ''} value="${sling:encode(fn:split(imageClass,'=')[1],'HTML_ATTR')}">
-		${sling:encode(fn:split(imageClass,'=')[0],'HTML')}
-	</option>
-</c:forEach>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list.json
deleted file mode 100644
index 816e431..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-	"jcr:primaryType": "sling:Component",
-    "componentType": "General",
-    "jcr:title": "List"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/config.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/config.json
deleted file mode 100644
index 696f63e..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/config.json
+++ /dev/null
@@ -1,25 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType" : "sling-cms/components/general/container",
-	"paginationClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "Pagination Class",
-		"name": "paginationClass",
-		"required": true
-	},
-	"pageItemClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "Page Item Class",
-		"name": "pageItemClass",
-		"required": true
-	},
-	"pageLinkClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "PageLink Class",
-		"name": "pageLinkClass",
-		"required": true
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/edit.json
deleted file mode 100644
index 607c520..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/edit.json
+++ /dev/null
@@ -1,63 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"query": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/textarea",
-			"label": "Query",
-			"name": "query",
-			"required": true
-		},
-		"limit": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Limit",
-			"name": "limit",
-			"required": true,
-			"type": "number"
-		},
-		"includePagination": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Include Pagination",
-			"name": "includePagination",
-			"required": true,
-			"options": {
-				"yes": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "Yes",
-					"value": "true"
-				},
-				"no": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "No",
-					"value": "false"
-				}
-			}
-		},
-		"includePaginationTypeHint": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/hidden",
-			"name": "includePagination@TypeHint",
-			"value": "Boolean"
-		},
-		"tag": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "List Tag",
-			"name": "tag",
-			"required": false
-		},
-		"class": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "List Class",
-			"name": "class",
-			"required": false
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/init.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/init.jsp
deleted file mode 100644
index 0ca29e2..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/init.jsp
+++ /dev/null
@@ -1,29 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
- <sling:adaptTo adaptable="${resource}" adaptTo="org.apache.sling.cms.core.models.PageManager" var="pageMgr" />
-<c:set var="query" value="${properties.query}" scope="request" />
-<c:set var="limit" value="${properties.limit}" scope="request" />
-<c:set var="includePagination" value="${properties.includePagination}" scope="request" />
-<c:set var="tag" value="${not empty properties.tag ? properties.tag : 'ul'}" scope="request" />
-<c:set var="clazz" value="${not empty properties.class ? properties.class : ''}" scope="request" />
-<c:set var="listConfig" value="${pageMgr.page.template.componentConfigs['reference/components/general/list']}" scope="request" />
-<c:if test="${not empty query}">
-	<c:set var="list" value="${sling:adaptTo(slingRequest, 'org.apache.sling.cms.reference.models.ItemList')}" scope="request"  />
-</c:if>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/item.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/item.jsp
deleted file mode 100644
index 0f39089..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/item.jsp
+++ /dev/null
@@ -1,32 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<li>
-	<c:choose>
-		<c:when test="${item.resourceType == 'sling:File' || item.resourceType == 'nt:file'}">
-			<c:set var="url" value="${item.path }" />
-		</c:when>
-		<c:otherwise>
-			<c:set var="url" value="${item.path}.html" />
-		</c:otherwise>
-	</c:choose>
-	<a href="${url}">
-		<sling:encode value="${item.valueMap['jcr:content/jcr:title']}" default="${item.name}" mode="HTML" />
-	</a>
-</li>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/list.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/list.jsp
deleted file mode 100644
index 3c165e2..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/list.jsp
+++ /dev/null
@@ -1,31 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<sling:call script="init.jsp" />
-<c:if test="${list != null}">
-	<${tag} class="list ${clazz}">
-		<c:forEach var="it" items="${list.items}">
-			<c:set var="item" value="${it}" scope="request" />
-			<sling:call script="item.jsp" />
-		</c:forEach>
-		<c:if test="${includePagination}">
-			<sling:call script="pagination.jsp" />
-		</c:if>
-	</${tag}>
-</c:if>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/pagination.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/pagination.jsp
deleted file mode 100644
index cd8277d..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/list/pagination.jsp
+++ /dev/null
@@ -1,58 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
-<%@include file="/libs/sling-cms/global.jsp"%>
-<nav>
-	<ul class="${listConfig.valueMap.paginationClass}">
-		<c:choose>
-			<c:when test="${list.first == true}">
-				<li class="${listConfig.valueMap.pageItemClass} disabled">
-					<span class="${listConfig.valueMap.pageLinkClass}">
-						&lt;
-					</span>
-				</li>
-			</c:when>
-			<c:otherwise>
-				<li class="${listConfig.valueMap.pageItemClass}">
-					<a class="${listConfig.valueMap.pageLinkClass}" href="?page=${list.currentPage - 1}">&lt;</a>
-				</li>
-			</c:otherwise>
-		</c:choose>
-		<c:forEach var="page" items="${list.pages}">
-			<li class="${listConfig.valueMap.pageItemClass} ${page == list.currentPage ? 'active' : ''}">
-				<a href="?page=${page}" class="${listConfig.valueMap.pageLinkClass}">
-					${page}
-				</a>
-			</li>
-		</c:forEach>
-		<c:choose>
-			<c:when test="${list.last}">
-				<li class="${listConfig.valueMap.pageItemClass} disabled">
-					<span class="${listConfig.valueMap.pageLinkClass}">
-						&gt;
-					</span>
-				</li>
-			</c:when>
-			<c:otherwise>
-				<li class="${listConfig.valueMap.pageItemClass}">
-					<a class="${listConfig.valueMap.pageLinkClass}" href="?page=${list.currentPage + 1}">&gt;</a>
-				</li>
-			</c:otherwise>
-		</c:choose>
-	</ul>
-</nav>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/rss/rss.xml.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/rss/rss.xml.jsp
deleted file mode 100644
index daa07ca..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/rss/rss.xml.jsp
+++ /dev/null
@@ -1,56 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
-<%@ page language="java" contentType="text/xml; charset=UTF-8" pageEncoding="UTF-8"%>
-<%@include file="/libs/sling-cms/global.jsp"%>
-<c:set var="site" value="${sling:adaptTo(resource,'org.apache.sling.cms.core.models.SiteManager').site}" />
-	<channel>
-		<title>${site.title}</title>
-		<description>${site.description}</description>
-		<link>${site.url}</link>
-		<atom:link href="${site.url}/feed.xml" rel="self" type="application/rss+xml" />
-		<c:set var="query" value="SELECT * FROM [sling:Page] WHERE ISDESCENDANTNODE([${site.path}/posts]) AND [jcr:content/published]=true ORDER BY [jcr:content/publishDate] DESC" />
-		<c:forEach var="postRsrc" items="${sling:findResources(resourceResolver,query,'JCR-SQL2')}" end="9">
-			<item>
-				<c:set var="post" value="${sling:adaptTo(postRsrc,'org.apache.sling.cms.core.models.PageManager').page}" />
-				<title><sling:encode value="${post.title}" mode="XML" /></title>
-				<description><sling:encode value="${post.properties['jcr:description']}" mode="XML" /></description>
-				<content:encoded>
-					<![CDATA[
-						<img src="${site.url}${fn:replace(post.properties['sling:thumbnail'],site.path,'')}" title="${sling:encode(post.properties.summary,'XML_ATTR')}" />
-						<sling:encode value="${post.properties.snippet}" mode="XML" />
-					]]>
-				</content:encoded>
-				<c:if test="${not empty post.properties['sling:thumbnail']}">
-					<c:choose>
-						<c:when test="${fn:indexOf(post.properties['sling:thumbnail'],'.png') != -1}">
-							<enclosure length="0" type="image/png" url="${fn:replace(site.url,'https','http')}${fn:replace(post.properties['sling:thumbnail'],site.path,'')}" />
-						</c:when>
-						<c:otherwise>
-							<enclosure length="0" type="image/jpeg" url="${fn:replace(site.url,'https','http')}${fn:replace(post.properties['sling:thumbnail'],site.path,'')}" />
-						</c:otherwise>
-					</c:choose>
-				</c:if>
-				<fmt:parseDate value="${post.properties.publishDate}" var="publishDate" pattern="yyyy-MM-dd" />
-				<pubDate><fmt:formatDate value="${publishDate}" pattern="EEE, dd MMM yyyy HH:mm:ss Z" /></pubDate>
-				<link>${site.url}${post.publishedPath}</link>
-				<guid isPermaLink="true">${site.url}${post.publishedPath}</guid>
-			</item>
-		</c:forEach>
-	</channel>
-</rss>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search.json
deleted file mode 100644
index fa97a55..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-	"jcr:primaryType": "sling:Component",
-    "componentType": "General",
-    "jcr:title": "Search"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/config.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/config.json
deleted file mode 100644
index ee549b1..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/config.json
+++ /dev/null
@@ -1,46 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType" : "sling-cms/components/general/container",
-	"searchClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "Search Class",
-		"name": "searchClass",
-		"type": "text"
-	},
-	"resultClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "Result Class",
-		"name": "resultClass",
-		"type": "text"
-	},
-	"resultHeaderClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "Result Header Class",
-		"name": "resultHeaderClass",
-		"type": "text"
-	},
-	"paginationClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "Pagination Class",
-		"name": "paginationClass",
-		"required": true
-	},
-	"pageItemClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "Page Item Class",
-		"name": "pageItemClass",
-		"required": true
-	},
-	"pageLinkClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/text",
-		"label": "PageLink Class",
-		"name": "pageLinkClass",
-		"required": true
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/edit.json
deleted file mode 100644
index c77aaaf..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/edit.json
+++ /dev/null
@@ -1,24 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"limit": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Limit",
-			"name": "limit",
-			"required": true,
-			"type": "number"
-		},
-		"basePath": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Base Path",
-			"name": "basePath",
-			"required": true
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/pagination.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/pagination.jsp
deleted file mode 100644
index b94da75..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/pagination.jsp
+++ /dev/null
@@ -1,58 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
-<%@include file="/libs/sling-cms/global.jsp"%>
-<nav>
-	<ul class="${searchConfig.valueMap.paginationClass}">
-		<c:choose>
-			<c:when test="${search.first == true}">
-				<li class="${searchConfig.valueMap.pageItemClass} disabled">
-					<span class="${searchConfig.valueMap.pageLinkClass}">
-						&lt;
-					</span>
-				</li>
-			</c:when>
-			<c:otherwise>
-				<li class="${searchConfig.valueMap.pageItemClass}">
-					<a class="${searchConfig.valueMap.pageLinkClass}" href="?q=${sling:encode(search.term,'HTML_ATTR')}">&lt;</a>
-				</li>
-			</c:otherwise>
-		</c:choose>
-		<c:forEach var="page" items="${search.pages}">
-			<li class="${searchConfig.valueMap.pageItemClass} ">
-				<a href="?q=${sling:encode(search.term,'HTML_ATTR')}&page=${page}" class="${searchConfig.valueMap.pageLinkClass}">
-					${page}
-				</a>
-			</li>
-		</c:forEach>
-		<c:choose>
-			<c:when test="${search.last}">
-				<li class="${searchConfig.valueMap.pageItemClass} disabled">
-					<span class="${searchConfig.valueMap.pageLinkClass}">
-						&gt;
-					</span>
-				</li>
-			</c:when>
-			<c:otherwise>
-				<li class="${searchConfig.valueMap.pageItemClass}">
-					<a class="${searchConfig.valueMap.pageLinkClass}" href="?q=${sling:encode(search.term,'HTML_ATTR')}&page=${search.currentPage + 1}">&gt;</a>
-				</li>
-			</c:otherwise>
-		</c:choose>
-	</ul>
-</nav>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/result.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/result.jsp
deleted file mode 100644
index 0d86a95..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/result.jsp
+++ /dev/null
@@ -1,32 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
-<%@include file="/libs/sling-cms/global.jsp"%>
-<div class="searchresult ${searchConfig.valueMap.resultClass}">
-	<div class="searchresult__header ${searchConfig.valueMap.resultHeaderClass}">
-		<a href="${result.path}.html" class="searchresult__link">
-			<sling:encode value="${result.valueMap['jcr:content/jcr:title']}" mode="HTML" />
-		</a>
-	</div>
-	<p class="searchresult__body">
-		<sling:encode value="${result.valueMap['jcr:content/jcr:description']}" mode="HTML" />
-	</p>
-	<a href="${result.path}.html" class="searchresult__link">
-		${fn:replace(result.path,sling:getAbsoluteParent(result,3).path,'')}.html
-	</a>
-</div>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/search.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/search.jsp
deleted file mode 100644
index 4e08f17..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/search/search.jsp
+++ /dev/null
@@ -1,41 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<sling:adaptTo var="pageMgr" adaptable="${resource}" adaptTo="org.apache.sling.cms.core.models.PageManager" />
-<c:set var="searchConfig" value="${pageMgr.page.template.componentConfigs['reference/components/general/search']}" scope="request" />
-<c:if test="${not empty properties.limit && not empty param.q}">
-	<c:set var="search" value="${sling:adaptTo(slingRequest, 'org.apache.sling.cms.reference.models.Search')}" scope="request"  />
-	<div class="search ${searchConfig.valueMap.searchClass}">
-		<div class="search__header">
-			<fmt:message key="slingcms.search.header">
-				<fmt:param value="${sling:encode(search.term,'HTML')}" />
-				<fmt:param value="${search.start + 1}" />
-				<fmt:param value="${search.end}" />
-				<fmt:param value="${search.count}" />
-			</fmt:message>
-		</div>
-		<div class="search__results">
-			<c:forEach var="result" items="${search.results}">
-				<c:set var="result" value="${result}" scope="request" />
-				<sling:call script="result.jsp" />
-			</c:forEach>
-		</div>
-		<sling:call script="pagination.jsp" />
-	</div>
-</c:if>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/sitemap/sitemap.xml.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/sitemap/sitemap.xml.jsp
deleted file mode 100644
index cfbf909..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/sitemap/sitemap.xml.jsp
+++ /dev/null
@@ -1,35 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%><?xml version="1.0" encoding="UTF-8"?>
-<%@ page language="java" contentType="text/xml; charset=UTF-8" pageEncoding="UTF-8"%>
-<%@include file="/libs/sling-cms/global.jsp"%>
-<c:set var="site" value="${sling:adaptTo(resource,'org.apache.sling.cms.core.models.SiteManager').site}" />
-<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
-	<c:set var="query" value="SELECT * FROM [sling:Page] WHERE ISDESCENDANTNODE([${site.path}]) AND [jcr:content/published]=true AND ([jcr:content/hideInSitemap] IS NULL OR [jcr:content/hideInSitemap] <> true)" />
-	<c:forEach var="pageRsrc" items="${sling:findResources(resourceResolver,query,'JCR-SQL2')}">
-		<c:set var="page" value="${sling:adaptTo(pageRsrc,'org.apache.sling.cms.core.models.PageManager').page}" />
-		<url>
-			<loc>${site.url}${page.publishedPath}</loc>
-			<changefreq>monthly</changefreq>
-		</url>
-	</c:forEach>
-	<url>
-		<loc>${site.url}/</loc>
-		<changefreq>always</changefreq>
-	</url>
-</urlset>
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper.json
deleted file mode 100644
index 8bb29f7..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-	"jcr:primaryType": "sling:Component",
-    "componentType": "General",
-    "jcr:title": "Style Wrapper"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/config.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/config.json
deleted file mode 100644
index 7910776..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/config.json
+++ /dev/null
@@ -1,12 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType" : "sling-cms/components/general/container",
-	"styles": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType" : "sling-cms/components/editor/fields/repeating",
-		"label": "Style Options",
-		"name": "styles",
-		"type": "text",
-		"required": true
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/edit.json
deleted file mode 100644
index cfec221..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/edit.json
+++ /dev/null
@@ -1,17 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"style": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Style Option",
-			"name": "style",
-			"required": true,
-			"optionsScript": "/apps/reference/components/general/stylewrapper/options.jsp"
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/options.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/options.jsp
deleted file mode 100644
index de9a85d..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/options.jsp
+++ /dev/null
@@ -1,26 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<sling:adaptTo var="pageMgr" adaptable="${slingRequest.requestPathInfo.suffixResource}" adaptTo="org.apache.sling.cms.core.models.PageManager" />
-<c:set var="configRsrc" value="${pageMgr.page.template.componentConfigs['reference/components/general/stylewrapper']}" />
-<c:forEach var="style" items="${configRsrc.valueMap.styles}">
-	<option ${slingRequest.requestPathInfo.suffixResource.valueMap.style == sling:encode(fn:split(style,'=')[1],'HTML_ATTR') ? 'selected' : ''} value="${sling:encode(fn:split(style,'=')[1],'HTML_ATTR')}">
-		${sling:encode(fn:split(style,'=')[0],'HTML')}
-	</option>
-</c:forEach>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/stylewrapper.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/stylewrapper.jsp
deleted file mode 100644
index 84e2083..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/stylewrapper/stylewrapper.jsp
+++ /dev/null
@@ -1,22 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<div class="${properties.style}">
-	<sling:include path="container" resourceType="sling-cms/components/general/container" />
-</div>
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/suffixheader.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/suffixheader.json
deleted file mode 100644
index 2125121..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/suffixheader.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-	"jcr:primaryType": "sling:Component",
-    "componentType": "General",
-    "jcr:title": "Suffix Header"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/suffixheader/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/suffixheader/edit.json
deleted file mode 100644
index d6cad4f..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/suffixheader/edit.json
+++ /dev/null
@@ -1,55 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"subString": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Subsitution String",
-			"name": "subString",
-			"required": true
-		},
-		"property": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Suffix Resource Property",
-			"name": "property"
-		},
-		"tag": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Tag",
-			"name": "tag",
-			"required": true,
-			"options": {
-				"h1": {
-					"label": "Header 1",
-					"value": "h1"
-				},
-				"h2": {
-					"label": "Header 2",
-					"value": "h2"
-				},
-				"h3": {
-					"label": "Header 3",
-					"value": "h3"
-				},
-				"h4": {
-					"label": "Header 4",
-					"value": "h4"
-				},
-				"h5": {
-					"label": "Header 5",
-					"value": "h5"
-				},
-				"p": {
-					"label": "Paragraph",
-					"value": "p"
-				}
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/suffixheader/suffixheader.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/suffixheader/suffixheader.jsp
deleted file mode 100644
index d5285ce..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/suffixheader/suffixheader.jsp
+++ /dev/null
@@ -1,30 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<c:choose>
-	<c:when test="${not empty properties.property}">
-		<c:set var="value" value="${slingRequest.requestPathInfo.suffixResource.valueMap[properties.property]}" />
-	</c:when>
-	<c:otherwise>
-		<c:set var="value" value="${slingRequest.requestPathInfo.suffixResource.name}" />
-	</c:otherwise>
-</c:choose>
-<${properties.tag}>
-	<sling:encode value="${fn:replace(properties.subString,'{SUFFIX}',value)}" mode="HTML" />
-</${properties.tag}>
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags.json
deleted file mode 100644
index 80df40a..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-	"jcr:primaryType": "sling:Component",
-    "componentType": "General",
-    "jcr:title": "Tags"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags/config.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags/config.json
deleted file mode 100644
index 7111792..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags/config.json
+++ /dev/null
@@ -1,34 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/general/container",
-	"tagPage": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/editor/fields/path",
-		"label": "Tag Page",
-		"name": "tagPage"
-	},
-	"listTag": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/editor/fields/text",
-		"label": "List Tag",
-		"name": "listTag"
-	},
-	"listClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/editor/fields/text",
-		"label": "List Class",
-		"name": "listClass"
-	},
-	"itemTag": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/editor/fields/text",
-		"label": "Item Tag",
-		"name": "itemTag"
-	},
-	"itemClass": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/editor/fields/text",
-		"label": "Item Class",
-		"name": "itemClass"
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags/edit.json
deleted file mode 100644
index 67a9d32..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags/edit.json
+++ /dev/null
@@ -1,9 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "No Need to Edit",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container"
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags/tags.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags/tags.jsp
deleted file mode 100644
index 4ab9e85..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/general/tags/tags.jsp
+++ /dev/null
@@ -1,34 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<sling:adaptTo adaptable="${resource}" adaptTo="org.apache.sling.cms.core.models.PageManager" var="pageMgr" />
-<c:set var="config" value="${sling:adaptTo(pageMgr.page.template.componentConfigs['reference/components/general/tags'],'org.apache.sling.api.resource.ValueMap')}" scope="request" />
-<c:set var="contentResource" value="${sling:getRelativeResource(pageMgr.page.resource,'jcr:content')}" />
-<c:set var="listTag" value="${empty config.listTag ? 'div' : config.listTag}" />
-<c:set var="itemTag" value="${empty config.listTag ? 'span' : config.itemTag}"  />
-<${listTag} class="${config.listClass}">
-	<c:forEach var="tagPath" items="${contentResource.valueMap['sling:taxonomy']}">
-		<c:set var="tag" value="${sling:getResource(resourceResolver,tagPath)}" />
-		<${itemTag} class="${config.itemClass}">
-			<a href="${config.tagPage}.html${tag.path}.html">
-				<sling:encode value="${tag.valueMap['jcr:title']}" default="${tag.name}" mode="HTML" />
-			</a>
-		</${itemTag}>
-	</c:forEach>
-</${listTag}>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base.json
deleted file mode 100644
index a393610..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-    "jcr:primaryType" : "sling:Component",
-    "jcr:title": "Reference - Base Page",
-    "componentType": "Page"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/base.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/base.jsp
deleted file mode 100644
index 38c2f6c..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/base.jsp
+++ /dev/null
@@ -1,24 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<!DOCTYPE html>
-<html lang="en">
-	<sling:call script="head.jsp" />
-	<sling:call script="body.jsp" />
-</html>
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/body.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/body.jsp
deleted file mode 100644
index 0d49fac..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/body.jsp
+++ /dev/null
@@ -1,69 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<body>
-	<sling:call script="/libs/sling-cms/components/editor/scripts/init.jsp" />
-	<div class="title">
-		<div class="logo">
-			<a href="/">
-				<img border="0" alt="Apache Sling" src="/static/clientlibs/reference/img/sling.svg"/>
-			</a>
-		</div>
-		<div class="header">
-			<a href="http://www.apache.org">
-				<img border="0" alt="Apache" src="/static/clientlibs/reference/img/apache.png"/>
-			</a>
-		</div>
-	</div>
-	<div class="menu">
-		<sling:include path="/content/apache/sling-apache-org/index/jcr:content/menu" resourceType="sling-cms/components/general/container" />
-		<a href="http://apache.org/foundation/contributing.html">
-            <img border="0" alt="Support the Apache Software Foundation!" src="/static/clientlibs/reference/img/SupportApache-small.png" width="115px">
-        </a>
-	</div>
-	<div class="main">
-		<div class="pagenav">
-			<sling:include path="breadcrumb" resourceType="reference/components/general/breadcrumb" />               
-			<div class="tags">
-				<sling:include path="tags" resourceType="reference/components/general/tags" />
-			</div>                
-		</div>
-		<h1 class="pagetitle">
-			${sling:encode(resource.valueMap['jcr:title'],'HTML')}
-		</h1>
-		<div class="row">
-			<sling:call script="content.jsp" />
-		</div>
-		<div class="footer">
-			<div class="revisionInfo">
-				Last modified by <span class="author">${sling:encode(resource.valueMap['jcr:lastModifiedBy'],'HTML')}</span>
-				on <span class="comment"><fmt:formatDate type="both" dateStyle="long" timeStyle="long" value = "${resource.valueMap['jcr:lastModified'].time}" /></span>
-			</div>
-			<p>
-				Apache Sling, Sling, Apache, the Apache feather logo, and the Apache Sling project logo are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.
-			</p>
-			<p>
-				<jsp:useBean id="date" class="java.util.Date" />
-				Copyright � 2011-<fmt:formatDate value="${date}" pattern="yyyy" /> The Apache Software Foundation.
-			</p>
-		</div>
-	</div>
-	<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
-	<sling:call script="/libs/sling-cms/components/editor/scripts/finalize.jsp" />
-</body>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/content.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/content.jsp
deleted file mode 100644
index cf61b42..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/content.jsp
+++ /dev/null
@@ -1,20 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<sling:include path="container" resourceType="sling-cms/components/general/container" />
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/edit.json
deleted file mode 100644
index 91e6f65..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/edit.json
+++ /dev/null
@@ -1,98 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save Page",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"title": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Title",
-			"name": "jcr:title",
-			"required": true
-		},
-		"description": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/textarea",
-			"label": "Description",
-			"name": "jcr:description"
-		},
-		"taxonomy": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/taxonomy",
-			"label": "Keywords",
-			"name": "sling:taxonomy"
-		},
-		"taxonomyTypeHint": {
-			"jcr:primaryType": "nt:unstructured",
-			"name": "jcr:content/sling:taxonomy@TypeHint",
-			"value": "String[]",
-			"sling:resourceType": "sling-cms/components/editor/fields/hidden"
-		},
-		"canonical": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/path",
-			"basePath": "/content",
-			"type": "sling:Page",
-			"label": "Canonical",
-			"name": "canonical",
-			"titleProperty": "jcr:content/jcr:title"
-		},
-		"published": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Published",
-			"name": "published",
-			"options": {
-				"yes": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "Yes",
-					"value": "true"
-				},
-				"no": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "No",
-					"value": "false"
-				}
-			}
-		},
-		"publishedTypeHint": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/hidden",
-			"name": "published@TypeHint",
-			"value": "Boolean"
-		},
-		"hideInSitemap": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Hide in Sitemap",
-			"name": "hideInSitemap",
-			"options": {
-				"no": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "No",
-					"value": "false"
-				},
-				"yes": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "Yes",
-					"value": "true"
-				}
-			}
-		},
-		"hideInSitemapTypeHint": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/hidden",
-			"name": "hideInSitemap@TypeHint",
-			"value": "Boolean"
-		},
-		"template": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Template",
-			"name": "sling:template",
-			"disabled": true
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/head.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/head.jsp
deleted file mode 100644
index 0d2974a..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/base/head.jsp
+++ /dev/null
@@ -1,32 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
-<head>
-	<meta charset="utf-8" />
-    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
-    <meta name="viewport" content="width=device-width, initial-scale=1" />
-    <title>Apache Sling :: ${resource.valueMap['jcr:title']}</title>
-    <link rel="icon" href="/static/clientlibs/reference/img/favicon.ico"/>
-    <link rel="stylesheet" href="/static/clientlibs/reference/site.css"/>
-    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/default.min.css"/>
-    <script src='https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js'></script>
-    <script>
-    		hljs.initHighlightingOnLoad();
-    </script>
-</head>
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/post.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/post.json
deleted file mode 100644
index 4252b49..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/post.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
-    "jcr:primaryType" : "sling:Component",
-    "jcr:title": "Reference - Blog Post Page",
-    "sling:resourceSuperType": "reference/components/pages/base",
-    "componentType": "Page"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/post/content.jsp b/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/post/content.jsp
deleted file mode 100644
index ad9ce76..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/post/content.jsp
+++ /dev/null
@@ -1,22 +0,0 @@
-<%-- /*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ --%>
- <%@include file="/libs/sling-cms/global.jsp"%>
- <fmt:parseDate value="${item.valueMap['jcr:content/publishDate']}" var="publishDate" pattern="yyyy-MM-dd" />
-<em itemprop="datePublished"><fmt:formatDate value="${publishDate}" pattern="MMM d, yyyy" /></em><br/>
-<sling:include path="container" resourceType="sling-cms/components/general/container" />
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/post/edit.json b/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/post/edit.json
deleted file mode 100644
index 4673f6e..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/components/pages/post/edit.json
+++ /dev/null
@@ -1,105 +0,0 @@
- {
-	"jcr:primaryType": "nt:unstructured",
-	"sling:resourceType": "sling-cms/components/editor/slingform",
-	"button": "Save Page",
-	"fields": {
-		"jcr:primaryType": "nt:unstructured",
-		"sling:resourceType": "sling-cms/components/general/container",
-		"title": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Title",
-			"name": "jcr:title",
-			"required": true
-		},
-		"description": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/textarea",
-			"label": "Description",
-			"name": "jcr:description"
-		},
-		"taxonomy": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/taxonomy",
-			"label": "Keywords",
-			"name": "sling:taxonomy"
-		},
-		"taxonomyTypeHint": {
-			"jcr:primaryType": "nt:unstructured",
-			"name": "jcr:content/sling:taxonomy@TypeHint",
-			"value": "String[]",
-			"sling:resourceType": "sling-cms/components/editor/fields/hidden"
-		},
-		"canonical": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/path",
-			"basePath": "/content",
-			"type": "sling:Page",
-			"label": "Canonical",
-			"name": "canonical",
-			"titleProperty": "jcr:content/jcr:title"
-		},
-		"published": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Published",
-			"name": "published",
-			"options": {
-				"yes": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "Yes",
-					"value": "true"
-				},
-				"no": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "No",
-					"value": "false"
-				}
-			}
-		},
-		"publishedTypeHint": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/hidden",
-			"name": "published@TypeHint",
-			"value": "Boolean"
-		},
-		"publishDate": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Published Date",
-			"name": "publishDate",
-			"type": "date"
-		},
-		"hideInSitemap": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/select",
-			"label": "Hide in Sitemap",
-			"name": "hideInSitemap",
-			"options": {
-				"no": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "No",
-					"value": "false"
-				},
-				"yes": {
-					"jcr:primaryType": "nt:unstructured",
-					"label": "Yes",
-					"value": "true"
-				}
-			}
-		},
-		"hideInSitemapTypeHint": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/hidden",
-			"name": "hideInSitemap@TypeHint",
-			"value": "Boolean"
-		},
-		"template": {
-			"jcr:primaryType": "nt:unstructured",
-			"sling:resourceType": "sling-cms/components/editor/fields/text",
-			"label": "Template",
-			"name": "sling:template",
-			"disabled": true
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/apps/reference/i18n.json b/cms/reference/src/main/resources/jcr_root/apps/reference/i18n.json
deleted file mode 100644
index 4af3f4f..0000000
--- a/cms/reference/src/main/resources/jcr_root/apps/reference/i18n.json
+++ /dev/null
@@ -1,32 +0,0 @@
-{
-	"jcr:primaryType": "sling:OrderedFolder",
-	"jcr:content": {
-		"jcr:title": "CMS"
-	},
-	"en_US": {
-		"jcr:primaryType": "sling:Folder",
-		"jcr:mixinTypes": [
-			"mix:language"
-		],
-		"jcr:language": "en",
-		"sling:resourceType": "sling-cms/components/cms/blank",
-		"entry": {
-			"jcr:primaryType": "sling:MessageEntry",
-			"sling:message": "Found {3} results for \"{0}\". Showing results {1} - {2}.",
-			"sling:key": "slingcms.search.header"
-		}
-	},
-	"de_DE": {
-		"jcr:primaryType": "sling:Folder",
-		"jcr:mixinTypes": [
-			"mix:language"
-		],
-		"jcr:language": "de",
-		"sling:resourceType": "sling-cms/components/cms/blank",
-		"entry_493865649": {
-			"jcr:primaryType": "sling:MessageEntry",
-			"sling:message": "Gefunden {3} Ergebnisse für \"{0}\". Zeige Ergebnisse {1} - {2}.",
-			"sling:key": "slingcms.search.header"
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/content.json b/cms/reference/src/main/resources/jcr_root/content.json
deleted file mode 100644
index e064ab5..0000000
--- a/cms/reference/src/main/resources/jcr_root/content.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
-    "jcr:primaryType": "sling:Folder"
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/content/apache.json b/cms/reference/src/main/resources/jcr_root/content/apache.json
deleted file mode 100644
index 16f392b..0000000
--- a/cms/reference/src/main/resources/jcr_root/content/apache.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
-	"jcr:primaryType": "sling:OrderedFolder",
-	"sling:configRef": "/conf/global",
-	"jcr:content": {
-		"jcr:primaryType": "nt:unstructured",
-		"jcr:title": "Apache Software Foundation"
-	},
-	"sling-apache-org": {
-		"jcr:primaryType": "sling:Site",
-		"jcr:title": "Apache Sling",
-		"jcr:language": "en",
-		"sling:url": "https://sling.apache.org",
-		"index": {
-			"jcr:primaryType": "sling:Page",
-			"jcr:content": {
-				"jcr:primaryType": "nt:unstructured",
-				"jcr:title": "Apache Sling - Bringing Back the Fun!",
-				"sling:template": "/conf/global/site/templates/base-page",
-				"sling:taxonomy": "/etc/taxonomy/reference/community",
-				"sling:resourceType": "reference/components/pages/base",
-				"published": false,
-				"hideInSitemap": false,
-				"container": {
-					"jcr:primaryType": "nt:unstructured",
-					"richtext": {
-						"jcr:primaryType": "nt:unstructured",
-						"text": "<p>Apache Slingâ„¢ is a framework for RESTful web-applications based on an extensible content tree.</p>\r\n<p>In a nutshell, Sling maps HTTP request URLs to content resources based on the request's path, extension and selectors. Using convention over configuration, requests are processed by scripts and servlets, dynamically selected based on the current resource. This fosters meaningful URLs and resource driven request processing, while the modular nature of Sling allows for [...]
-						"sling:resourceType": "sling-cms/components/general/richtext"
-					}
-				},
-				"menu": {
-					"jcr:primaryType": "nt:unstructured",
-					"richtext": {
-						"jcr:primaryType": "nt:unstructured",
-						"text": "<p>\r\n                <strong><a href=\"#\">Documentation</a></strong><br>\r\n                <a href=\"#\">Getting Started</a><br>\r\n                <a href=\"#\">The Sling Engine</a><br>\r\n                <a href=\"#\">Development</a><br>\r\n                <a href=\"#\">Bundles</a><br>\r\n                <a href=\"#\">Tutorials &amp; How-Tos</a><br>\r\n                <a href=\"http://sling.apache.org/components/\">Maven Plugins</a><br>\r\n                <a href=\"# [...]
-						"sling:resourceType": "sling-cms/components/general/richtext"
-					}
-				}
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/etc/taxonomy/reference.json b/cms/reference/src/main/resources/jcr_root/etc/taxonomy/reference.json
deleted file mode 100644
index 310d007..0000000
--- a/cms/reference/src/main/resources/jcr_root/etc/taxonomy/reference.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
-	"jcr:primaryType": "sling:Taxonomy",
-	"jcr:title": "Reference",
-	"community": {
-		"jcr:primaryType": "sling:Taxonomy",
-		"jcr:title": "Community"
-	}
-}
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/SupportApache-small.png b/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/SupportApache-small.png
deleted file mode 100644
index 4a23e05..0000000
Binary files a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/SupportApache-small.png and /dev/null differ
diff --git a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/apache.png b/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/apache.png
deleted file mode 100644
index fc3f667..0000000
Binary files a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/apache.png and /dev/null differ
diff --git a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/favicon.ico b/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/favicon.ico
deleted file mode 100644
index a36e242..0000000
Binary files a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/favicon.ico and /dev/null differ
diff --git a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/sling.svg b/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/sling.svg
deleted file mode 100644
index ac3c0e7..0000000
--- a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/img/sling.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<svg id="Sling_Logo" data-name="Sling Logo" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 768 392"><defs><linearGradient id="linear-gradient" x1="-8576.57" y1="2068.26" x2="-8523.42" y2="2006.11" gradientTransform="matrix(-1, -0.01, -0.01, 1, -8384.13, -1821.1)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#f69923"/><stop offset="0.31" stop-color="#f79a23"/><stop offset="0.84" stop-color="#e97826"/></linearGradient><linearGradie [...]
\ No newline at end of file
diff --git a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/site.css b/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/site.css
deleted file mode 100644
index 5f6e7b2..0000000
--- a/cms/reference/src/main/resources/jcr_root/static/clientlibs/reference/site.css
+++ /dev/null
@@ -1,339 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-body {
-    background-color: #ffffff;
-    color: #3b3b3b;
-    font-family: Tahoma, Arial, sans-serif;
-    font-size: 10pt;
-    line-height: 140%
-}
-
-h1,h2,h3,h4,h5,h6 {
-    font-weight: normal;
-    color: #000000;
-    line-height: 100%;
-}
-
-.tocHeading {
-	font-size:120%;
-	font-weight:bold;
-}
-
-h1 {
-    font-size: 200%;
-    font-weight: bold;
-    border-bottom: solid #EEE 1px;
-    border-top: solid #EEE 1px;
-    padding-top:.2em;
-    padding-bottom:.2em;
-}
-
-h2 {
-    font-size: 200%;
-    margin-top: 1em;
-    font-weight: normal;
-    border-top: solid #e0e0e0 1px;
-    padding-top: 0.45em;
-}
-
-h1 a, h1 a:visited, h2 a, h2 a:visited, h3 a, h3 a:visited, h4 a, h4 a:visited {
-	color:black;
-	text-decoration:none;
-}
-
-h3 {
-    font-size: 150%
-}
-
-h4 {
-    font-size: 140%
-}
-
-h5 {
-    font-size: 130%
-}
-
-h6 {
-    font-size: 120%
-}
-
-a {
-    color: #1980af
-}
-
-a:visited {
-    color: #1980af
-}
-
-a:hover {
-    color: #1faae9
-}
-
-img {
-    max-width: 100%;
-    border: solid 1px #EEE;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-    padding: 0.5em
-}
-
-.title {
-    position: absolute;
-    left: 1px;
-    right: 1px;
-    top: 25px;
-    height: 81px;
-    background:
-        url(https://sling.apache.org/site/media.data/gradient.png)
-        repeat-x;
-    background-position: bottom;
-}
-
-.title img {
-    width: auto;
-    border: none;
-    margin-top: 0px;
-    margin-bottom: 0px;
-    padding: 0px;    
-}
-
-.logo {
-    position: absolute;
-    width: 15em;
-    height: 81px;
-    text-align: center;
-}
-
-.logo img {
-    height: 63px;
-}
-
-.header {
-    text-align: right;
-    margin-right: 20pt;
-}
-
-.menu {
-    border-top: 10px solid #f9bb00;
-    position: absolute;
-    top: 107px;
-    left: 1px;
-    width: 15em;
-    bottom: 0px;
-    padding: 0px;
-    background-color: #fcfcfc
-}
-
-.menu ul,.menu p {
-    background-color: #fdf5d9;
-    list-style: none;
-    padding-left: 4em;
-    margin-top: 0px;
-    padding-top: 2em;
-    padding-bottom: 2em;
-    margin-left: 0px;
-    color: #4a4a43
-}
-
-.menu p {
-    font-size: 90%;
-    margin: 0px;
-    padding: 1px;
-    padding-left: 1em;
-    padding-bottom: 1em;
-}
-
-.menu a {
-    text-decoration: none;
-    color: #4a4a43
-}
-
-.main {
-    position: absolute;
-    border-top: 10px solid #cde0ea;
-    top: 107px;
-    left: 15em;
-    right: 1px;
-    margin-left: 2px;
-    padding-right: 4em;
-    padding-left: 1em;
-    padding-top: 1em;
-}
-
-.preformatted {
-    color: black;
-    background-color: #eeeeee;
-    border: solid 1px black;
-    padding: 0.5em
-}
-
-.preformattedContent pre {
-    margin: 0em
-}
-
-table {
-    border-collapse: collapse;
-    margin: 5px;
-}
-
-th {
-    background-color: #FDF5D9;
-    border: 1px solid #DDD;
-    padding: 3px 4px;
-    text-align: left;
-    font-weight:bold;
-    font-size:90%;
-    padding: 3px 4px;
-}
-
-td {
-    border: 1px solid #DDD;
-    padding: 3px 4px;
-}
-
-.note
-{
-/*
-    background-color: #FFFFCE;
-    border: 1px solid #F0C000;
-*/
-    border: 1px solid #f0c000;
-	background: #ffffce url('icons/warning.gif') no-repeat 5px 5px;
-	text-align: left;
-	margin-top: 5px;
-	margin-bottom: 5px;
-	padding: 5px 5px 5px 28px;
-}
-
-.warning
-{
-/*
-    background-color: #FFCCCC;
-    border: 1px solid #CC0000;
-*/
-    border: 1px solid #f0c000;
-	background: #ffffce url('icons/forbidden.gif') no-repeat 5px 5px;
-	text-align: left;
-	margin-top: 5px;
-	margin-bottom: 5px;
-	padding: 5px 5px 5px 28px;
-}
-
-.info
-{
-/*
-    background-color: #D8E4F1;
-    border: 1px solid #3C78B5;
-*/
-    border: 1px solid #3c78b5;
-	background: #D8E4F1 url('icons/information.gif') no-repeat 5px 5px;
-	text-align: left;
-	margin-top: 5px;
-	margin-bottom: 5px;
-	padding: 5px 5px 5px 28px;
-}
-
-.tip
-{
-/*
-    background-color: #DDFFDD;
-    border: 1px solid #009900;
-*/
-	border: 1px solid #090;
-	background: #dfd url('/res/icons/check.gif') no-repeat 5px 5px;
-	text-align: left;
-	margin-top: 5px;
-	margin-bottom: 5px;
-	padding: 5px 5px 5px 28px;
-}
-
-/** Last modification information at the botton of each page */
-.timestamp {
-    margin-top: 30px;
-    font-size: 80%;
-    text-align: right;
-}
-
-.footer {
-    font-size: 80%;
-    font-style: italic;
-    margin-top: 10px;
-    text-align: left;
-}
-
-blockquote {
-    font-style: italic;
-    margin: 0;
-    padding-left: 1em;
-    border-left: 1px solid black;
-}
-
-pre {
-    color: black;
-    background-color: #f0f0f0;
-    border: solid 1px #f5f5f5;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-    padding: 0.5em;
-    width: 100%;
-}
-
-.draft {
-	font-size:150%;
-	font-weight:bold;
-    color:blue;
-    text-align:center;
-}
-
-.footer {
-    padding-top: 1em; 
-}
-
-.badge {
-    border-radius: 2px;
-    background-color: #EEE;
-    text-align: center;
-    padding-left: 3px;
-    padding-right: 3px;
-	margin-left: 3px;
-}
-
-.pagenav {
-    overflow:hidden
-    font-size: 70%;
-    clear:both;
-    padding-bottom:1em;
-}
-
-.breadcrumbs {
-    float:left;
-}
-
-.tags {
-    float:right;
-}
-
-.tags a {
-    background-color: #EEE;
-	padding: 0.2em;
-    margin-left: 0.2em;
-	text-decoration: none;
-}
-
-.allTagsLink {
-    padding-right:0.5em;
-}
\ No newline at end of file
diff --git a/cms/ui/pom.xml b/cms/ui/pom.xml
deleted file mode 100644
index a502b93..0000000
--- a/cms/ui/pom.xml
+++ /dev/null
@@ -1,137 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
-	license agreements. See the NOTICE file distributed with this work for additional 
-	information regarding copyright ownership. The ASF licenses this file to 
-	you under the Apache License, Version 2.0 (the "License"); you may not use 
-	this file except in compliance with the License. You may obtain a copy of 
-	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
-	by applicable law or agreed to in writing, software distributed under the 
-	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
-	OF ANY KIND, either express or implied. See the License for the specific 
-	language governing permissions and limitations under the License. -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<parent>
-		<artifactId>org.apache.sling.cms</artifactId>
-		<groupId>org.apache.sling</groupId>
-		<version>1.0.0-SNAPSHOT</version>
-	</parent>
-	<artifactId>org.apache.sling.cms.ui</artifactId>
-	<packaging>bundle</packaging>
-	<name>Apache Sling - CMS UI</name>
-
-	<properties>
-		<frontend.target>target/frontend</frontend.target>
-	</properties>
-
-	<build>
-		<plugins>
-			<plugin>
-				<artifactId>maven-resources-plugin</artifactId>
-				<executions>
-					<execution>
-						<id>copy-resources</id>
-						<phase>validate</phase>
-						<goals>
-							<goal>copy-resources</goal>
-						</goals>
-						<configuration>
-							<outputDirectory>${basedir}/${frontend.target}</outputDirectory>
-							<resources>
-								<resource>
-									<directory>src/main/frontend</directory>
-								</resource>
-							</resources>
-						</configuration>
-					</execution>
-				</executions>
-			</plugin>
-
-			<plugin>
-				<groupId>com.github.eirslett</groupId>
-				<artifactId>frontend-maven-plugin</artifactId>
-				<version>1.4</version>
-				<configuration>
-					<installDirectory>${frontend.target}</installDirectory>
-					<workingDirectory>${frontend.target}</workingDirectory>
-				</configuration>
-				<executions>
-					<execution>
-						<id>install node and npm</id>
-						<goals>
-							<goal>install-node-and-npm</goal>
-						</goals>
-						<configuration>
-							<nodeVersion>v6.11.0</nodeVersion>
-							<npmVersion>3.10.10</npmVersion>
-						</configuration>
-					</execution>
-					<execution>
-						<id>npm install</id>
-						<goals>
-							<goal>npm</goal>
-						</goals>
-						<configuration>
-							<arguments>install</arguments>
-						</configuration>
-					</execution>
-					<execution>
-						<id>gulp build</id>
-						<goals>
-							<goal>gulp</goal>
-						</goals>
-					</execution>
-				</executions>
-			</plugin>
-
-			<plugin>
-				<groupId>org.apache.felix</groupId>
-				<artifactId>maven-bundle-plugin</artifactId>
-				<extensions>true</extensions>
-				<configuration>
-					<instructions>
-						<Sling-Nodetypes>SLING-INF/nodetypes/nodetypes.cnd</Sling-Nodetypes>
-						<Sling-Initial-Content>
-							jcr_root,
-							jcr_root/oak%3Aindex;overwrite:=false;uninstall:=true;path:=/oak:index,
-							jcr_root/conf/global;overwrite:=false;uninstall:=true;path:=/conf/global,
-							jcr_root/etc/clientlibs;overwrite=true;ignoreImportProviders:=xml;path:=/etc/clientlibs,
-							jcr_root/etc/taxonomy;overwrite:=false;uninstall:=true;path:=/etc/taxonomy,
-							jcr_root/libs/sling/servlet/errorhandler;overwriteProperties:=true;overwrite:=true;uninstall:=true;path:=/libs/sling/servlet/errorhandler,
-							jcr_root/libs/sling-cms;overwrite:=true;uninstall:=true;path:=/libs/sling-cms,
-							jcr_root/static/clientlibs/sling-cms;overwrite:=true;uninstall:=true;path:=/static/clientlibs/sling-cms
-						</Sling-Initial-Content>
-            			<Include-Resource>{maven-resources},${basedir}/target/frontend/dist</Include-Resource>
-					</instructions>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
-	<profiles>
-		<profile>
-			<id>autoInstallBundle</id>
-			<build>
-				<plugins>
-					<plugin>
-						<groupId>org.apache.sling</groupId>
-						<artifactId>maven-sling-plugin</artifactId>
-						<executions>
-							<execution>
-								<id>install-bundle</id>
-								<goals>
-									<goal>install</goal>
-								</goals>
-								<configuration>
-									<slingUrl>${sling.protocol}://${sling.host}:${sling.port}/system/console</slingUrl>
-									<user>${sling.username}</user>
-									<password>${sling.password}</password>
-								</configuration>
-							</execution>
-						</executions>
-					</plugin>
-				</plugins>
-			</build>
-		</profile>
-	</profiles>
-</project>
\ No newline at end of file
diff --git a/cms/ui/src/main/frontend/gulpfile.js b/cms/ui/src/main/frontend/gulpfile.js
deleted file mode 100755
index 9131361..0000000
--- a/cms/ui/src/main/frontend/gulpfile.js
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-const gulp        = require('gulp');
-const sass        = require('gulp-sass');
-const header      = require('gulp-header');
-const cleanCSS   = require('gulp-clean-css');
-var concatCss = require('gulp-concat-css');
-var concat = require('gulp-concat');
-var rename = require('gulp-rename');
-var uglify = require('gulp-uglify');
-let sourcemaps = require('gulp-sourcemaps');
-var merge = require('merge-stream');
-var order = require("gulp-order");
-
-const apache2License = [
-'/*',
-' * Licensed to the Apache Software Foundation (ASF) under one or more',
-' * contributor license agreements.  See the NOTICE file distributed with',
-' * this work for additional information regarding copyright ownership.',
-' * The ASF licenses this file to You under the Apache License, Version 2.0',
-' * (the "License"); you may not use this file except in compliance with',
-' * the License.  You may obtain a copy of the License at',
-' *',
-' *      http://www.apache.org/licenses/LICENSE-2.0',
-' *',
-' * Unless required by applicable law or agreed to in writing, software',
-' * distributed under the License is distributed on an "AS IS" BASIS,',
-' * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.',
-' * See the License for the specific language governing permissions and',
-' * limitations under the License.',
-' */',
-''
-].join('\n');
-
-var scssStream = gulp.src('./src/scss/*.scss')
-	.pipe(sass().on('error', sass.logError))
-	.pipe(concat('scss-files.scss'))
-    .pipe(sourcemaps.init())
-    .pipe(cleanCSS())
-    .pipe(header(apache2License));
-
-var cssStream = gulp.src('./node_modules/summernote/dist/summernote-lite.css');
-
-gulp.task('styles', function() {
-	 var mergedStream = merge(cssStream, scssStream)
-     	.pipe(concat('styles.min.css'))
-        .pipe(gulp.dest('./dist/jcr_root/static/clientlibs/sling-cms/css'))
-	 	.pipe(rename('bundle.css'))
-	 	.pipe(gulp.dest('./dist/jcr_root/content/starter/css'));
-	 return mergedStream;
-});
-
-var vendorJSStream = gulp.src([
-	'./node_modules/jquery/dist/jquery.min.js',
-	'./node_modules/handlebars/dist/handlebars.min.js',
-	'./node_modules/summernote/dist/summernote-lite.js']);
-
-var jsStream = gulp.src([
-		'./src/js/scripts.js'
-	])
-	.pipe(uglify())
-    .pipe(header(apache2License));
-
-gulp.task('js', function() {
-	var mergedStream = merge(jsStream, vendorJSStream)
-		.pipe(order([
-			'node_modules/jquery/**/*.js',
-			'node_modules/handlebars/**/*.js',
-			'node_modules/summernote/**/*.js',
-			'src/js/*.js',
-		]))
-		.pipe(concat('scripts.min.js'))
-		.pipe(gulp.dest('./dist/jcr_root/static/clientlibs/sling-cms/js'));
-});
-
-gulp.task('assets', function() {
-	gulp.src('./src/{fonts,img}/**/*')
-		.pipe(gulp.dest('./dist/jcr_root/static/clientlibs/sling-cms'))
-		.pipe(gulp.dest('./dist/jcr_root/content/starter'));
-	gulp.src('./src/img/sling-logo.svg')
-	.pipe(gulp.dest('./dist/jcr_root/content/starter'))
-	.pipe(gulp.dest('./dist/jcr_root/content/starter'));
-	gulp.src('./node_modules/summernote/dist/font/*')
-		.pipe(gulp.dest('./dist/jcr_root/static/clientlibs/sling-cms/css/font'));
-});
-
-
-gulp.task('default', ['styles', 'js', 'assets'], function() {});
\ No newline at end of file
diff --git a/cms/ui/src/main/frontend/package.json b/cms/ui/src/main/frontend/package.json
deleted file mode 100644
index 5f51579..0000000
--- a/cms/ui/src/main/frontend/package.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
-  "name": "apache-sling-cms-front-end",
-  "version": "1.0.0",
-  "description": "Scripts to power the front-end of Apache Sling's CMS example.",
-  "repository": {
-    "type": "git",
-    "url": "https://github.com/npm/npm.git"
-  },
-  "dependencies": {
-  	"jquery": "^3.3.1",
-  	"handlebars": "^4.0.11",
-  	"summernote": "^0.8.9"
-  },
-  "devDependencies": {
-    "gulp": "^3.9.1",
-    "gulp-concat": "^2.6.1",
-    "gulp-rename": "^1.2.2",
-    "gulp-uglify": "^3.0.0",
-    "gulp-concat-css": "^3.0.0",
-    "gulp-header": "^1.8.9",
-    "gulp-clean-css": "^3.9.2",
-    "gulp-sass": "^3.1.0",
-    "gulp-sourcemaps": "^2.6.4",
-    "merge-stream": "^1.0.1",
-    "gulp-order": "^1.1.1"
-  },
-  "scripts": {
-    "test": "echo \"Error: no test specified\" && exit 1"
-  },
-  "license": "Apache-2.0"
-}
\ No newline at end of file
diff --git a/cms/ui/src/main/frontend/src/fonts/OpenSans-Bold-webfont.woff b/cms/ui/src/main/frontend/src/fonts/OpenSans-Bold-webfont.woff
deleted file mode 100755
index 1205787..0000000
Binary files a/cms/ui/src/main/frontend/src/fonts/OpenSans-Bold-webfont.woff and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/fonts/OpenSans-Light-webfont.woff b/cms/ui/src/main/frontend/src/fonts/OpenSans-Light-webfont.woff
deleted file mode 100755
index e786074..0000000
Binary files a/cms/ui/src/main/frontend/src/fonts/OpenSans-Light-webfont.woff and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/fonts/OpenSans-Regular-webfont.woff b/cms/ui/src/main/frontend/src/fonts/OpenSans-Regular-webfont.woff
deleted file mode 100755
index e231183..0000000
Binary files a/cms/ui/src/main/frontend/src/fonts/OpenSans-Regular-webfont.woff and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/fonts/OpenSans-Semibold-webfont.woff b/cms/ui/src/main/frontend/src/fonts/OpenSans-Semibold-webfont.woff
deleted file mode 100755
index 28d6ade..0000000
Binary files a/cms/ui/src/main/frontend/src/fonts/OpenSans-Semibold-webfont.woff and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/android-chrome-192x192.png b/cms/ui/src/main/frontend/src/img/android-chrome-192x192.png
deleted file mode 100644
index 9449505..0000000
Binary files a/cms/ui/src/main/frontend/src/img/android-chrome-192x192.png and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/android-chrome-512x512.png b/cms/ui/src/main/frontend/src/img/android-chrome-512x512.png
deleted file mode 100644
index 195ebe0..0000000
Binary files a/cms/ui/src/main/frontend/src/img/android-chrome-512x512.png and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/apple-touch-icon.png b/cms/ui/src/main/frontend/src/img/apple-touch-icon.png
deleted file mode 100644
index df261e9..0000000
Binary files a/cms/ui/src/main/frontend/src/img/apple-touch-icon.png and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/asf-logo.svg b/cms/ui/src/main/frontend/src/img/asf-logo.svg
deleted file mode 100755
index 9e453dc..0000000
--- a/cms/ui/src/main/frontend/src/img/asf-logo.svg
+++ /dev/null
@@ -1,227 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-    Licensed to the Apache Software Foundation (ASF) under one
-    or more contributor license agreements.  See the NOTICE file
-    distributed with this work for additional information
-    regarding copyright ownership.  The ASF licenses this file
-    to you under the Apache License, Version 2.0 (the
-    "License"); you may not use this file except in compliance
-    with the License.  You may obtain a copy of the License at
-    
-    http://www.apache.org/licenses/LICENSE-2.0
-    
-    Unless required by applicable law or agreed to in writing,
-    software distributed under the License is distributed on an
-    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-    KIND, either express or implied.  See the License for the
-    specific language governing permissions and limitations
-    under the License.
--->
-<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
-<svg version="1.1" id="Layer_2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
-	 viewBox="0 0 7127.6 2890" enable-background="new 0 0 7127.6 2890" xml:space="preserve">
-<path fill="#6D6E71" d="M7104.7,847.8c15.3,15.3,22.9,33.7,22.9,55.2c0,21.5-7.6,39.9-22.9,55.4c-15.3,15.4-33.8,23.1-55.6,23.1
-	c-21.8,0-40.2-7.6-55.4-22.9c-15.1-15.3-22.7-33.7-22.7-55.2c0-21.5,7.6-39.9,22.9-55.4c15.3-15.4,33.7-23.1,55.4-23.1
-	C7070.9,824.9,7089.4,832.5,7104.7,847.8z M7098.1,951.9c13.3-13.6,20-29.8,20-48.7s-6.6-35-19.8-48.5
-	c-13.2-13.4-29.4-20.1-48.6-20.1c-19.2,0-35.4,6.7-48.7,20.2c-13.3,13.5-19.9,29.7-19.9,48.7c0,19,6.6,35.2,19.7,48.6
-	c13.1,13.4,29.3,20.1,48.5,20.1S7084.7,965.4,7098.1,951.9z M7087.1,888.1c0,14-6.1,22.8-18.4,26.4l22.5,30.5h-18.2l-20.3-28.3
-	h-18.6v28.3h-14.7v-84.6h31.8c12.8,0,22,2.2,27.6,6.6C7084.4,871.4,7087.1,878.4,7087.1,888.1z M7068.2,900c3-2.4,4.4-6.5,4.4-12
-	c0-5.5-1.5-9.4-4.5-11.6c-3-2.2-8.4-3.2-16-3.2h-18v30.5h17.5C7059.7,903.6,7065.3,902.4,7068.2,900z"/>
-<path fill="#6D6E71" d="M1803.6,499.8v155.4h-20V499.8h-56.8v-19.2h133.9v19.2H1803.6z"/>
-<path fill="#6D6E71" d="M2082.2,655.2v-76.9h-105.2v76.9h-20V480.5h20v78.9h105.2v-78.9h20v174.7H2082.2z"/>
-<path fill="#6D6E71" d="M2241.4,499.8v57.4h88.1v19.2h-88.1v59.8h101.8v19h-121.8V480.5H2340v19.2H2241.4z"/>
-<path fill="#D22128" d="M1574.5,1852.4l417.3-997.6h80.1l417.3,997.6h-105.4l-129.3-311.9h-448.2l-127.9,311.9H1574.5z M2032.6,970
-	l-205.1,493.2h404.7L2032.6,970z"/>
-<path fill="#D22128" d="M2596.9,1852.4V854.8H3010c171.4,0,295.1,158.8,295.1,313.3c0,163-115.2,316.1-286.6,316.1h-324.6v368.1
-	H2596.9z M2693.9,1397.1h318.9c118,0,193.9-108.2,193.9-229c0-125.1-92.7-226.2-202.3-226.2h-310.5V1397.1z"/>
-<path fill="#D22128" d="M3250.5,1852.4l417.3-997.6h80.1l417.3,997.6h-105.4l-129.3-311.9h-448.2l-127.9,311.9H3250.5z M3708.6,970
-	l-205.1,493.2h404.7L3708.6,970z"/>
-<path fill="#D22128" d="M4637.3,849.1c177,0,306.3,89.9,368.1,217.8l-78.7,47.8c-63.2-132.1-186.9-177-295.1-177
-	c-238.9,0-369.5,213.6-369.5,414.5c0,220.6,161.6,420.1,373.7,420.1c112.4,0,244.5-56.2,307.7-185.5l81.5,42.1
-	c-64.6,148.9-241.7,231.8-394.8,231.8c-274,0-466.5-261.3-466.5-514.2C4163.8,1106.3,4336.6,849.1,4637.3,849.1z"/>
-<path fill="#D22128" d="M5949.1,854.8v997.6h-98.4v-466.5h-591.5v466.5h-96.9V854.8h96.9v444h591.5v-444H5949.1z"/>
-<path fill="#D22128" d="M6844.6,1765.2v87.1h-670.2V854.8H6832v87.1h-560.6v359.7h489v82.9h-489v380.8H6844.6z"/>
-<path fill="#6D6E71" d="M1667.6,2063.6c11.8,3.5,22.2,8.3,31,14.2l-10.3,22.6c-9-6-18.6-10.4-28.9-13.4c-10.2-2.9-20-4.4-29.2-4.4
-	c-13.6,0-24.5,2.4-32.6,7.3c-8.1,4.9-12.2,11.8-12.2,20.7c0,7.6,2.3,14,6.8,19c4.5,5,10.2,8.9,17,11.7c6.8,2.8,16.1,6,28,9.6
-	c14.4,4.6,26,8.9,34.7,12.9c8.8,4,16.3,9.9,22.5,17.8c6.2,7.8,9.3,18.2,9.3,31c0,11.7-3.2,21.8-9.5,30.6
-	c-6.3,8.7-15.3,15.5-26.8,20.3c-11.6,4.8-24.9,7.2-40,7.2c-15.1,0-29.7-2.9-43.9-8.7c-14.2-5.8-26.4-13.6-36.6-23.4l10.7-21.6
-	c9.6,9.4,20.7,16.7,33.3,21.9c12.6,5.2,24.8,7.8,36.8,7.8c15.3,0,27.3-3,36.1-8.9c8.8-5.9,13.2-13.9,13.2-23.9
-	c0-7.8-2.3-14.3-6.9-19.4c-4.6-5.1-10.3-9-17.1-11.9c-6.8-2.8-16.1-6-28-9.6c-14.2-4.2-25.7-8.3-34.6-12.2
-	c-8.9-3.9-16.4-9.7-22.5-17.5c-6.1-7.7-9.2-17.9-9.2-30.6c0-10.9,3-20.4,9-28.6c6-8.2,14.6-14.6,25.6-19.1
-	c11.1-4.5,23.8-6.8,38.2-6.8C1643.8,2058.3,1655.7,2060.1,1667.6,2063.6z"/>
-<path fill="#6D6E71" d="M1980.1,2072.8c16.8,9.4,30.2,22.3,40,38.4c9.8,16.2,14.8,33.9,14.8,53.3c0,19.5-4.9,37.4-14.8,53.6
-	c-9.8,16.3-23.2,29.1-40,38.6c-16.8,9.5-35.3,14.3-55.2,14.3c-20.3,0-38.8-4.7-55.7-14.3c-16.8-9.5-30.2-22.4-40-38.6
-	c-9.8-16.3-14.8-34.1-14.8-53.6c0-19.5,4.9-37.3,14.8-53.5c9.8-16.2,23.2-29,40-38.3c16.8-9.4,35.4-14,55.7-14
-	C1944.8,2058.6,1963.2,2063.3,1980.1,2072.8z M1881.9,2092.7c-13.1,7.4-23.6,17.5-31.4,30.1c-7.8,12.6-11.8,26.5-11.8,41.7
-	c0,15.3,3.9,29.3,11.8,42c7.8,12.7,18.3,22.8,31.4,30.2c13.1,7.4,27.4,11.1,42.9,11.1c15.5,0,29.7-3.7,42.7-11.1
-	c13-7.4,23.3-17.4,31.1-30.2c7.7-12.7,11.6-26.7,11.6-42s-3.9-29.2-11.6-41.8c-7.7-12.6-18.1-22.6-31.1-30
-	c-13-7.4-27.2-11.2-42.6-11.2C1909.4,2081.5,1895.1,2085.2,1881.9,2092.7z"/>
-<path fill="#6D6E71" d="M2186.5,2082.4v74h98.4v23.2h-98.4v90.2h-24.1v-210.6h133.8v23.2H2186.5z"/>
-<path fill="#6D6E71" d="M2491.6,2082.4v187.4h-24.1v-187.4h-68.4v-23.2h161.4v23.2H2491.6z"/>
-<path fill="#6D6E71" d="M2871.8,2269.8l-56.8-177.4l-57.6,177.4h-24.5l-70.5-210.6h25.9l57.9,182.7l57.1-182.4l24.1-0.3l57.7,182.7
-	l57.1-182.7h25l-70.6,210.6H2871.8z"/>
-<path fill="#6D6E71" d="M3087.3,2216.6l-23.5,53.2h-25.6l94.4-210.6h25l94.1,210.6h-26.1l-23.5-53.2H3087.3z M3144.5,2086.6
-	l-46.9,106.8h94.4L3144.5,2086.6z"/>
-<path fill="#6D6E71" d="M3461.1,2202.7c-6,0.4-10.7,0.6-14.1,0.6h-56v66.5H3367v-210.6h80c26.2,0,46.6,6.2,61.2,18.5
-	c14.5,12.3,21.8,29.8,21.8,52.3c0,17.2-4.1,31.7-12.2,43.3c-8.1,11.6-19.8,20-35,25l49.2,71.5h-27.3L3461.1,2202.7z M3491.3,2167.6
-	c10.3-8.4,15.5-20.8,15.5-37c0-15.9-5.2-27.9-15.5-36c-10.3-8.1-25.1-12.2-44.3-12.2h-56v97.8h56
-	C3466.2,2180.2,3481,2176,3491.3,2167.6z"/>
-<path fill="#6D6E71" d="M3688.3,2082.4v69.2h106.2v23.2h-106.2v72.1h122.8v22.9h-146.9v-210.6h142.9v23.2H3688.3z"/>
-<path fill="#6D6E71" d="M4147,2082.4v74h98.4v23.2H4147v90.2h-24.1v-210.6h133.8v23.2H4147z"/>
-<path fill="#6D6E71" d="M4523.3,2072.8c16.8,9.4,30.2,22.3,40,38.4c9.8,16.2,14.8,33.9,14.8,53.3c0,19.5-4.9,37.4-14.8,53.6
-	c-9.8,16.3-23.2,29.1-40,38.6c-16.8,9.5-35.3,14.3-55.2,14.3c-20.3,0-38.8-4.7-55.7-14.3c-16.8-9.5-30.2-22.4-40-38.6
-	c-9.8-16.3-14.8-34.1-14.8-53.6c0-19.5,4.9-37.3,14.8-53.5c9.8-16.2,23.2-29,40-38.3c16.8-9.4,35.4-14,55.7-14
-	C4488.1,2058.6,4506.5,2063.3,4523.3,2072.8z M4425.2,2092.7c-13.1,7.4-23.6,17.5-31.4,30.1c-7.8,12.6-11.8,26.5-11.8,41.7
-	c0,15.3,3.9,29.3,11.8,42c7.8,12.7,18.3,22.8,31.4,30.2c13.1,7.4,27.4,11.1,42.9,11.1c15.5,0,29.7-3.7,42.7-11.1
-	c13-7.4,23.3-17.4,31.1-30.2c7.7-12.7,11.6-26.7,11.6-42s-3.9-29.2-11.6-41.8c-7.7-12.6-18.1-22.6-31.1-30
-	c-13-7.4-27.2-11.2-42.6-11.2C4452.6,2081.5,4438.3,2085.2,4425.2,2092.7z"/>
-<path fill="#6D6E71" d="M4854.7,2247.7c-15.7,15.5-37.3,23.3-64.8,23.3c-27.7,0-49.4-7.8-65.1-23.3c-15.7-15.5-23.6-37-23.6-64.6
-	v-124h24.1v124c0,20.3,5.8,36.1,17.3,47.5c11.6,11.4,27.3,17.1,47.3,17.1c20.1,0,35.8-5.7,47.1-17c11.4-11.3,17-27.2,17-47.7v-124
-	h24.1v124C4878.2,2210.7,4870.4,2232.2,4854.7,2247.7z"/>
-<path fill="#6D6E71" d="M5169.5,2269.8l-126.3-169.1v169.1h-24.1v-210.6h25l126.3,169.3v-169.3h23.8v210.6H5169.5z"/>
-<path fill="#6D6E71" d="M5478.4,2073.1c16.4,9.3,29.4,21.9,38.9,37.9c9.6,16,14.3,33.9,14.3,53.5s-4.8,37.6-14.3,53.6
-	c-9.5,16.1-22.6,28.7-39.3,37.9c-16.6,9.2-35.2,13.8-55.5,13.8h-84.3v-210.6h85.2C5443.7,2059.2,5462,2063.8,5478.4,2073.1z
-	 M5362.3,2246.9h61.4c15.5,0,29.6-3.5,42.3-10.6c12.7-7.1,22.8-16.9,30.2-29.5c7.4-12.5,11.1-26.5,11.1-42
-	c0-15.5-3.8-29.4-11.3-41.9c-7.5-12.5-17.7-22.3-30.6-29.6c-12.8-7.2-27-10.9-42.6-10.9h-60.5V2246.9z"/>
-<path fill="#6D6E71" d="M5668.6,2216.6l-23.5,53.2h-25.6l94.4-210.6h25l94.1,210.6H5807l-23.5-53.2H5668.6z M5725.8,2086.6
-	l-46.9,106.8h94.4L5725.8,2086.6z"/>
-<path fill="#6D6E71" d="M5991,2082.4v187.4H5967v-187.4h-68.4v-23.2h161.4v23.2H5991z"/>
-<path fill="#6D6E71" d="M6175.9,2269.8v-210.6h24.1v210.6H6175.9z"/>
-<path fill="#6D6E71" d="M6493.7,2072.8c16.8,9.4,30.2,22.3,40,38.4c9.8,16.2,14.8,33.9,14.8,53.3c0,19.5-4.9,37.4-14.8,53.6
-	c-9.8,16.3-23.2,29.1-40,38.6c-16.8,9.5-35.3,14.3-55.2,14.3c-20.3,0-38.8-4.7-55.7-14.3c-16.8-9.5-30.2-22.4-40-38.6
-	c-9.8-16.3-14.8-34.1-14.8-53.6c0-19.5,4.9-37.3,14.8-53.5c9.8-16.2,23.2-29,40-38.3c16.8-9.4,35.4-14,55.7-14
-	C6458.5,2058.6,6476.9,2063.3,6493.7,2072.8z M6395.6,2092.7c-13.1,7.4-23.6,17.5-31.4,30.1c-7.8,12.6-11.8,26.5-11.8,41.7
-	c0,15.3,3.9,29.3,11.8,42c7.8,12.7,18.3,22.8,31.4,30.2c13.1,7.4,27.4,11.1,42.9,11.1c15.5,0,29.7-3.7,42.7-11.1
-	c13-7.4,23.3-17.4,31.1-30.2c7.7-12.7,11.6-26.7,11.6-42s-3.9-29.2-11.6-41.8c-7.7-12.6-18.1-22.6-31.1-30
-	c-13-7.4-27.2-11.2-42.6-11.2C6423,2081.5,6408.8,2085.2,6395.6,2092.7z"/>
-<path fill="#6D6E71" d="M6826.5,2269.8l-126.3-169.1v169.1h-24.1v-210.6h25l126.3,169.3v-169.3h23.8v210.6H6826.5z"/>
-<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-4516.6152" y1="-2338.7222" x2="-4108.4111" y2="-1861.3982" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0" style="stop-color:#F69923"/>
-	<stop  offset="0.3123" style="stop-color:#F79A23"/>
-	<stop  offset="0.8383" style="stop-color:#E97826"/>
-</linearGradient>
-<path fill="url(#SVGID_1_)" d="M1230.1,13.7c-45.3,26.8-120.6,102.5-210.5,212.3l82.6,155.9c58-82.9,116.9-157.5,176.3-221.2
-	c4.6-5.1,7-7.5,7-7.5c-2.3,2.5-4.6,5-7,7.5c-19.2,21.2-77.5,89.2-165.5,224.4c84.7-4.2,214.9-21.6,321.1-39.7
-	c31.6-177-31-258-31-258S1323.4-41.4,1230.1,13.7z"/>
-<path fill="none" d="M1090.2,903.1c0.6-0.1,1.2-0.2,1.8-0.3l-11.9,1.3c-0.7,0.3-1.4,0.7-2.1,1
-	C1082.1,904.4,1086.2,903.7,1090.2,903.1z"/>
-<path fill="none" d="M1005.9,1182.3c-6.7,1.5-13.7,2.7-20.7,3.7C992.3,1185,999.2,1183.8,1005.9,1182.3z"/>
-<path fill="none" d="M432.9,1808.8c0.9-2.3,1.8-4.7,2.6-7c18.2-48,36.2-94.7,54-140.1c20-51,39.8-100.4,59.3-148.3
-	c20.6-50.4,40.9-99.2,60.9-146.3c21-49.4,41.7-97,62-142.8c16.5-37.3,32.8-73.4,48.9-108.3c5.4-11.7,10.7-23.2,16-34.6
-	c10.5-22.7,21-44.8,31.3-66.5c9.5-20,19-39.6,28.3-58.8c3.1-6.4,6.2-12.8,9.3-19.1c0.5-1,1-2,1.5-3.1l-10.2,1.1l-8-15.9
-	c-0.8,1.6-1.6,3.1-2.4,4.6c-14.5,28.8-28.9,57.9-43.1,87.2c-8.2,16.9-16.4,34-24.6,51c-22.6,47.4-44.8,95.2-66.6,143.3
-	c-22.1,48.6-43.7,97.5-64.9,146.5c-20.8,48.1-41.3,96.2-61.2,144.2c-20,48-39.5,95.7-58.5,143.2c-19.9,49.5-39.2,98.7-58,147.2
-	c-4.2,10.9-8.5,21.9-12.7,32.8c-15,39.2-29.7,77.8-44,116l12.7,25.1l11.4-1.2c0.4-1.1,0.8-2.3,1.3-3.4
-	C396.7,1905.4,414.9,1856.4,432.9,1808.8z"/>
-<path fill="none" d="M980,1186.8L980,1186.8c0.1,0,0.1,0,0.1-0.1C980.1,1186.8,980.1,1186.8,980,1186.8z"/>
-<path fill="#BE202E" d="M952.6,1323c-10.6,1.9-21.4,3.8-32.5,5.7c-0.1,0-0.1,0.1-0.2,0.1c5.6-0.8,11.2-1.7,16.6-2.6
-	C942,1325.2,947.3,1324.1,952.6,1323z"/>
-<path opacity="0.35" fill="#BE202E" d="M952.6,1323c-10.6,1.9-21.4,3.8-32.5,5.7c-0.1,0-0.1,0.1-0.2,0.1c5.6-0.8,11.2-1.7,16.6-2.6
-	C942,1325.2,947.3,1324.1,952.6,1323z"/>
-<path fill="#BE202E" d="M980.3,1186.7C980.2,1186.7,980.2,1186.7,980.3,1186.7c-0.1,0.1-0.2,0.1-0.2,0.1c1.8-0.2,3.5-0.5,5.2-0.8
-	c7-1,13.9-2.2,20.7-3.7C997.5,1183.8,989,1185.2,980.3,1186.7L980.3,1186.7L980.3,1186.7z"/>
-<path opacity="0.35" fill="#BE202E" d="M980.3,1186.7C980.2,1186.7,980.2,1186.7,980.3,1186.7c-0.1,0.1-0.2,0.1-0.2,0.1
-	c1.8-0.2,3.5-0.5,5.2-0.8c7-1,13.9-2.2,20.7-3.7C997.5,1183.8,989,1185.2,980.3,1186.7L980.3,1186.7L980.3,1186.7z"/>
-<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-7537.7339" y1="-2391.4075" x2="-4625.4141" y2="-2391.4075" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0.3233" style="stop-color:#9E2064"/>
-	<stop  offset="0.6302" style="stop-color:#C92037"/>
-	<stop  offset="0.7514" style="stop-color:#CD2335"/>
-	<stop  offset="1" style="stop-color:#E97826"/>
-</linearGradient>
-<path fill="url(#SVGID_2_)" d="M858.6,784.7c25.1-46.9,50.5-92.8,76.2-137.4c26.7-46.4,53.7-91.3,80.9-134.7
-	c1.6-2.6,3.2-5.2,4.8-7.7c27-42.7,54.2-83.7,81.6-122.9L1019.5,226c-6.2,7.6-12.5,15.3-18.8,23.2c-23.8,29.7-48.6,61.6-73.9,95.5
-	c-28.6,38.2-58,78.9-87.8,121.7c-27.6,39.5-55.5,80.9-83.5,123.7c-23.8,36.5-47.7,74-71.4,112.5c-0.9,1.4-1.8,2.9-2.6,4.3
-	l107.5,212.3C811.8,873.6,835.1,828.7,858.6,784.7z"/>
-<linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-7186.1777" y1="-2099.3059" x2="-5450.7183" y2="-2099.3059" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0" style="stop-color:#282662"/>
-	<stop  offset="9.548390e-02" style="stop-color:#662E8D"/>
-	<stop  offset="0.7882" style="stop-color:#9F2064"/>
-	<stop  offset="0.9487" style="stop-color:#CD2032"/>
-</linearGradient>
-<path fill="url(#SVGID_3_)" d="M369,1981c-14.2,39.1-28.5,78.9-42.9,119.6c-0.2,0.6-0.4,1.2-0.6,1.8c-2,5.7-4.1,11.5-6.1,17.2
-	c-9.7,27.4-18,52.1-37.3,108.2c31.7,14.5,57.1,52.5,81.1,95.6c-2.6-44.7-21-86.6-56.2-119.1c156.1,7,290.6-32.4,360.1-146.6
-	c6.2-10.2,11.9-20.9,17-32.2c-31.6,40.1-70.8,57.1-144.5,53c-0.2,0.1-0.3,0.1-0.5,0.2c0.2-0.1,0.3-0.1,0.5-0.2
-	c108.6-48.6,163.1-95.3,211.2-172.6c11.4-18.3,22.5-38.4,33.8-60.6c-94.9,97.5-205,125.3-320.9,104.2l-86.9,9.5
-	C374.4,1966.3,371.7,1973.6,369,1981z"/>
-<linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2418.5454" x2="-4461.8428" y2="-2418.5454" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0.3233" style="stop-color:#9E2064"/>
-	<stop  offset="0.6302" style="stop-color:#C92037"/>
-	<stop  offset="0.7514" style="stop-color:#CD2335"/>
-	<stop  offset="1" style="stop-color:#E97826"/>
-</linearGradient>
-<path fill="url(#SVGID_4_)" d="M409.6,1786.3c18.8-48.5,38.1-97.7,58-147.2c19-47.4,38.5-95.2,58.5-143.2
-	c20-48,40.4-96.1,61.2-144.2c21.2-49,42.9-97.8,64.9-146.5c21.8-48.1,44-95.9,66.6-143.3c8.1-17.1,16.3-34.1,24.6-51
-	c14.2-29.3,28.6-58.4,43.1-87.2c0.8-1.6,1.6-3.1,2.4-4.6L681.4,706.8c-1.8,2.9-3.5,5.8-5.3,8.6c-25.1,40.9-50,82.7-74.4,125.4
-	c-24.7,43.1-49,87.1-72.7,131.7c-20,37.6-39.6,75.6-58.6,113.9c-3.8,7.8-7.6,15.5-11.3,23.2c-23.4,48.2-44.6,94.8-63.7,139.5
-	c-21.7,50.7-40.7,99.2-57.5,145.1c-11,30.2-21,59.4-30.1,87.4c-7.5,24-14.7,47.9-21.5,71.8c-16,56.3-29.9,112.4-41.2,168.3
-	L353,1935.1c14.3-38.1,28.9-76.8,44-116C401.1,1808.2,405.4,1797.3,409.6,1786.3z"/>
-<linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-7161.7642" y1="-2379.1431" x2="-5631.2524" y2="-2379.1431" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0" style="stop-color:#282662"/>
-	<stop  offset="9.548390e-02" style="stop-color:#662E8D"/>
-	<stop  offset="0.7882" style="stop-color:#9F2064"/>
-	<stop  offset="0.9487" style="stop-color:#CD2032"/>
-</linearGradient>
-<path fill="url(#SVGID_5_)" d="M243.5,1729.4c-13.6,68.2-23.2,136.2-28,203.8c-0.2,2.4-0.4,4.7-0.5,7.1
-	c-33.7-54-124-106.8-123.8-106.2c64.6,93.7,113.7,186.7,120.9,278c-34.6,7.1-82-3.2-136.8-23.3c57.1,52.5,100,67,116.7,70.9
-	c-52.5,3.3-107.1,39.3-162.1,80.8c80.5-32.8,145.5-45.8,192.1-35.3C148.1,2414.2,74.1,2645,0,2890c22.7-6.7,36.2-21.9,43.9-42.6
-	c13.2-44.4,100.8-335.6,238-718.2c3.9-10.9,7.8-21.8,11.8-32.9c1.1-3,2.2-6.1,3.3-9.2c14.5-40.1,29.5-81.1,45.1-122.9
-	c3.5-9.5,7.1-19,10.7-28.6c0.1-0.2,0.1-0.4,0.2-0.6l-107.9-213.2C244.6,1724.4,244,1726.9,243.5,1729.4z"/>
-<linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2117.1309" x2="-4461.8428" y2="-2117.1309" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0.3233" style="stop-color:#9E2064"/>
-	<stop  offset="0.6302" style="stop-color:#C92037"/>
-	<stop  offset="0.7514" style="stop-color:#CD2335"/>
-	<stop  offset="1" style="stop-color:#E97826"/>
-</linearGradient>
-<path fill="url(#SVGID_6_)" d="M805.6,937c-3.1,6.3-6.2,12.7-9.3,19.1c-9.3,19.2-18.8,38.8-28.3,58.8
-	c-10.3,21.7-20.7,43.9-31.3,66.5c-5.3,11.4-10.6,22.9-16,34.6c-16.1,35-32.4,71.1-48.9,108.3c-20.3,45.8-41,93.4-62,142.8
-	c-20,47.1-40.3,95.9-60.9,146.3c-19.5,47.9-39.3,97.3-59.3,148.3c-17.8,45.4-35.9,92.1-54,140.1c-0.9,2.3-1.8,4.7-2.6,7
-	c-18,47.6-36.2,96.6-54.6,146.8c-0.4,1.1-0.8,2.3-1.3,3.4l86.9-9.5c-1.7-0.3-3.5-0.5-5.2-0.9c103.9-13,242.1-90.6,331.4-186.5
-	c41.1-44.2,78.5-96.3,113-157.3c25.7-45.4,49.8-95.8,72.8-151.5c20.1-48.7,39.4-101.4,58-158.6c-23.9,12.6-51.2,21.8-81.4,28.2
-	c-5.3,1.1-10.7,2.2-16.1,3.1c-5.5,1-11,1.8-16.6,2.6l0,0l0,0c0.1,0,0.1-0.1,0.2-0.1c96.9-37.3,158-109.2,202.4-197.4
-	c-25.5,17.4-66.9,40.1-116.6,51.1c-6.7,1.5-13.7,2.7-20.7,3.7c-1.7,0.3-3.5,0.6-5.2,0.8l0,0l0,0c0.1,0,0.1,0,0.1-0.1
-	c0,0,0.1,0,0.1,0l0,0c33.6-14.1,62-29.8,86.6-48.4c5.3-4,10.4-8.1,15.3-12.3c7.5-6.5,14.7-13.3,21.5-20.5c4.4-4.6,8.6-9.3,12.7-14.2
-	c9.6-11.5,18.7-23.9,27.1-37.3c2.6-4.1,5.1-8.3,7.6-12.6c3.2-6.2,6.3-12.3,9.3-18.3c13.5-27.2,24.4-51.5,33-72.8
-	c4.3-10.6,8.1-20.5,11.3-29.7c1.3-3.7,2.5-7.2,3.7-10.6c3.4-10.2,6.2-19.3,8.4-27.3c3.3-12,5.3-21.5,6.4-28.4l0,0l0,0
-	c-3.3,2.6-7.1,5.2-11.3,7.7c-29.3,17.5-79.5,33.4-119.9,40.8l79.8-8.8l-79.8,8.8c-0.6,0.1-1.2,0.2-1.8,0.3c-4,0.7-8.1,1.3-12.2,2
-	c0.7-0.3,1.4-0.7,2.1-1l-273,29.9C806.6,935,806.1,936,805.6,937z"/>
-<linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="-7554.8232" y1="-2132.0981" x2="-4642.5034" y2="-2132.0981" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0.3233" style="stop-color:#9E2064"/>
-	<stop  offset="0.6302" style="stop-color:#C92037"/>
-	<stop  offset="0.7514" style="stop-color:#CD2335"/>
-	<stop  offset="1" style="stop-color:#E97826"/>
-</linearGradient>
-<path fill="url(#SVGID_7_)" d="M1112.9,385.1c-24.3,37.3-50.8,79.6-79.4,127.5c-1.5,2.5-3,5.1-4.5,7.6
-	c-24.6,41.5-50.8,87.1-78.3,137c-23.8,43.1-48.5,89.3-74.3,139c-22.4,43.3-45.6,89.2-69.4,137.8l273-29.9
-	c79.5-36.6,115.1-69.7,149.6-117.6c9.2-13.2,18.4-27,27.5-41.3c28-43.8,55.6-92,80.1-139.9c23.7-46.3,44.7-92.2,60.7-133.5
-	c10.2-26.3,18.4-50.8,24.1-72.3c5-19,8.9-36.9,11.9-54.1C1327.9,363.5,1197.6,380.9,1112.9,385.1z"/>
-<path fill="#BE202E" d="M936.5,1326.1c-5.5,1-11,1.8-16.6,2.6l0,0C925.5,1328,931,1327.1,936.5,1326.1z"/>
-<path opacity="0.35" fill="#BE202E" d="M936.5,1326.1c-5.5,1-11,1.8-16.6,2.6l0,0C925.5,1328,931,1327.1,936.5,1326.1z"/>
-<linearGradient id="SVGID_8_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2027.484" x2="-4461.8433" y2="-2027.484" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0.3233" style="stop-color:#9E2064"/>
-	<stop  offset="0.6302" style="stop-color:#C92037"/>
-	<stop  offset="0.7514" style="stop-color:#CD2335"/>
-	<stop  offset="1" style="stop-color:#E97826"/>
-</linearGradient>
-<path fill="url(#SVGID_8_)" d="M936.5,1326.1c-5.5,1-11,1.8-16.6,2.6l0,0C925.5,1328,931,1327.1,936.5,1326.1z"/>
-<path fill="#BE202E" d="M980,1186.8c1.8-0.2,3.5-0.5,5.2-0.8C983.5,1186.3,981.8,1186.6,980,1186.8L980,1186.8z"/>
-<path opacity="0.35" fill="#BE202E" d="M980,1186.8c1.8-0.2,3.5-0.5,5.2-0.8C983.5,1186.3,981.8,1186.6,980,1186.8L980,1186.8z"/>
-<linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2037.7417" x2="-4461.8433" y2="-2037.7417" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0.3233" style="stop-color:#9E2064"/>
-	<stop  offset="0.6302" style="stop-color:#C92037"/>
-	<stop  offset="0.7514" style="stop-color:#CD2335"/>
-	<stop  offset="1" style="stop-color:#E97826"/>
-</linearGradient>
-<path fill="url(#SVGID_9_)" d="M980,1186.8c1.8-0.2,3.5-0.5,5.2-0.8C983.5,1186.3,981.8,1186.6,980,1186.8L980,1186.8z"/>
-<path fill="#BE202E" d="M980.2,1186.7C980.2,1186.7,980.2,1186.7,980.2,1186.7L980.2,1186.7L980.2,1186.7L980.2,1186.7
-	C980.2,1186.7,980.2,1186.7,980.2,1186.7z"/>
-<path opacity="0.35" fill="#BE202E" d="M980.2,1186.7C980.2,1186.7,980.2,1186.7,980.2,1186.7L980.2,1186.7L980.2,1186.7
-	L980.2,1186.7C980.2,1186.7,980.2,1186.7,980.2,1186.7z"/>
-<linearGradient id="SVGID_10_" gradientUnits="userSpaceOnUse" x1="-5738.0635" y1="-2039.799" x2="-5094.3457" y2="-2039.799" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)">
-	<stop  offset="0.3233" style="stop-color:#9E2064"/>
-	<stop  offset="0.6302" style="stop-color:#C92037"/>
-	<stop  offset="0.7514" style="stop-color:#CD2335"/>
-	<stop  offset="1" style="stop-color:#E97826"/>
-</linearGradient>
-<path fill="url(#SVGID_10_)" d="M980.2,1186.7C980.2,1186.7,980.2,1186.7,980.2,1186.7L980.2,1186.7L980.2,1186.7L980.2,1186.7
-	C980.2,1186.7,980.2,1186.7,980.2,1186.7z"/>
-</svg>
diff --git a/cms/ui/src/main/frontend/src/img/browserconfig.xml b/cms/ui/src/main/frontend/src/img/browserconfig.xml
deleted file mode 100644
index 5f597c9..0000000
--- a/cms/ui/src/main/frontend/src/img/browserconfig.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<browserconfig>
-    <msapplication>
-        <tile>
-            <square150x150logo src="/static/clientlibs/sling-cms/img/mstile-150x150.png"/>
-            <TileColor>#ffffff</TileColor>
-        </tile>
-    </msapplication>
-</browserconfig>
diff --git a/cms/ui/src/main/frontend/src/img/favicon-16x16.png b/cms/ui/src/main/frontend/src/img/favicon-16x16.png
deleted file mode 100644
index 3f2e70f..0000000
Binary files a/cms/ui/src/main/frontend/src/img/favicon-16x16.png and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/favicon-32x32.png b/cms/ui/src/main/frontend/src/img/favicon-32x32.png
deleted file mode 100644
index 4be0b97..0000000
Binary files a/cms/ui/src/main/frontend/src/img/favicon-32x32.png and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/favicon.ico b/cms/ui/src/main/frontend/src/img/favicon.ico
deleted file mode 100644
index ce0c6b4..0000000
Binary files a/cms/ui/src/main/frontend/src/img/favicon.ico and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/gradient.jpg b/cms/ui/src/main/frontend/src/img/gradient.jpg
deleted file mode 100755
index 5ca3d76..0000000
Binary files a/cms/ui/src/main/frontend/src/img/gradient.jpg and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/mstile-150x150.png b/cms/ui/src/main/frontend/src/img/mstile-150x150.png
deleted file mode 100644
index 7564a96..0000000
Binary files a/cms/ui/src/main/frontend/src/img/mstile-150x150.png and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/safari-pinned-tab.svg b/cms/ui/src/main/frontend/src/img/safari-pinned-tab.svg
deleted file mode 100644
index 2ada06c..0000000
--- a/cms/ui/src/main/frontend/src/img/safari-pinned-tab.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<svg version="1" xmlns="http://www.w3.org/2000/svg" width="1024" height="1024" viewBox="0 0 768.000000 768.000000"><path d="M63 146.1c-30.2 6.1-50.8 22.8-59.4 48.1C1.1 201.7.8 203.9.5 216c-.7 28.6 10.1 50.8 31.7 65.7 6.6 4.5 24.7 13.9 40.1 20.7 9.4 4.1 25.2 13.3 31 18.1 6.8 5.5 11.2 12.1 13.7 20.5 6.6 22.4-1.4 42.1-21 52-8.8 4.5-15.7 5.8-27.4 5.5-5.7-.1-10.7-.5-11.2-.8-.5-.3-2.6-.8-4.8-1.1-8.7-1.4-25.4-8.2-34.8-14.3-1.5-.9-2.9-1.5-3-1.3-.3.4-11.1 27.4-13.3 33.2-1.1 2.8 23.9 14 36.4 16.3  [...]
\ No newline at end of file
diff --git a/cms/ui/src/main/frontend/src/img/sling-logo.png b/cms/ui/src/main/frontend/src/img/sling-logo.png
deleted file mode 100644
index 69163d9..0000000
Binary files a/cms/ui/src/main/frontend/src/img/sling-logo.png and /dev/null differ
diff --git a/cms/ui/src/main/frontend/src/img/sling-logo.svg b/cms/ui/src/main/frontend/src/img/sling-logo.svg
deleted file mode 100644
index ac3c0e7..0000000
--- a/cms/ui/src/main/frontend/src/img/sling-logo.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one
-  or more contributor license agreements.  See the NOTICE file
-  distributed with this work for additional information
-  regarding copyright ownership.  The ASF licenses this file
-  to you under the Apache License, Version 2.0 (the
-  "License"); you may not use this file except in compliance
-  with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing,
-  software distributed under the License is distributed on an
-  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-  KIND, either express or implied.  See the License for the
-  specific language governing permissions and limitations
-  under the License.
--->
-<svg id="Sling_Logo" data-name="Sling Logo" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 768 392"><defs><linearGradient id="linear-gradient" x1="-8576.57" y1="2068.26" x2="-8523.42" y2="2006.11" gradientTransform="matrix(-1, -0.01, -0.01, 1, -8384.13, -1821.1)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#f69923"/><stop offset="0.31" stop-color="#f79a23"/><stop offset="0.84" stop-color="#e97826"/></linearGradient><linearGradie [...]
\ No newline at end of file
diff --git a/cms/ui/src/main/frontend/src/js/scripts.js b/cms/ui/src/main/frontend/src/js/scripts.js
deleted file mode 100644
index 13c65ed..0000000
--- a/cms/ui/src/main/frontend/src/js/scripts.js
+++ /dev/null
@@ -1,396 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */ 
-
-var Sling = {};
-Sling.CMS = {
-		ext: {},
-		decorate: function($ctx){
-			for (var key in Sling.CMS.ext) {
-				if(typeof Sling.CMS.ext[key].decorate == 'function'){
-					console.log('Invoking decorate for '+key);
-					Sling.CMS.ext[key].decorate($ctx);
-				}
-			}
-		},
-		init: function(){
-			for (var key in Sling.CMS.ext) {
-				if(typeof Sling.CMS.ext[key].init == 'function'){
-					console.log('Invoking init for '+key);
-					Sling.CMS.ext[key].init();
-				}
-			}
-			Sling.CMS.decorate($(document));
-		},
-		ui: {
-			alert: function(level, message){
-				$alert = $('<div class="Alert Alert-'+level+'">'+message+'</div>');
-				$('.main').prepend($alert);
-				setTimeout(function(){
-					$alert.remove();
-				}, 10000);
-				window.scrollTo(0, 0);
-			},
-			confirmMessage: function(title, message, cb){
-				var $modal = $('<div class="Modal"><div class="Modal-Content"><div class="Modal-Header">'+title+'</div><div class="Modal-Body">'+message+'</div><div class="Modal-Footer"><button type="button" class="Modal-Close">OK</button></div></div>');
-				$('body').append($modal);
-				$modal.css('display','block');
-				Sling.CMS.decorate($modal);
-				$modal.find('.Modal-Close').click(function(){
-					$modal.css('display','none').remove();
-					cb();
-				});
-				return $modal;
-			},
-			fetchModal: function(title, link, path, complete){
-				var $modal = $('<div class="Modal"><div class="Modal-Content"><div class="Modal-Header">'+title+'<button type="button" class="Modal-Close Pull-Right">x</button></div><div class="Modal-Body"></div></div>');
-				$('body').append($modal);
-				$modal.find('.Modal-Body').load(link + " " +path,function(){
-					$modal.css('display','block');
-					Sling.CMS.decorate($modal);
-					$modal.find('.Modal-Close').click(function(){
-						$modal.css('display','none').remove();
-						return false;
-					});
-					complete();
-				});
-				return $modal;
-			}
-		},
-		utils: {
-			form2Obj: function ($form){
-			    var data = {};
-			    $.map($form.serializeArray(), function(n, i){
-			    	data[n['name']] = n['value'];
-			    });
-			    return data;
-			}
-		}
-	}
-
-	//support links which fetch HTML and display a modal
-	Sling.CMS.ext['fetch-modal'] = {
-		decorate : function($ctx){
-			$ctx.find('a.Fetch-Modal').click(function(){
-				var $link = $(this);
-				$link.attr('disabled', 'disabled');
-				Sling.CMS.ui.fetchModal($link.attr('data-title'), encodeURI($link.attr('href')), $link.attr('data-path'), function(){
-					$link.removeAttr('disabled');
-				});
-				return false;
-			});
-		}
-	}
-
-	Sling.CMS.ext['ajaxform'] = {
-		decorate: function($ctx){
-			$ctx.find('.Form-Ajax').submit(function(){
-				
-				var $form = $(this);
-				var $inputs = $form.find('input,select,textarea,button');
-				var jcrcontent = false;
-				$form.find('input,select,textarea').each(function(idx,inp){
-					if(inp.name.indexOf('jcr:content') != -1){
-						jcrcontent = true;
-					}
-				});
-				if($form.data('addDate') && $form.find('input[name="jcr:content/jcr:lastModified"]').length == 0){
-					if(jcrcontent){
-						$form.append('<input type="hidden" name="jcr:content/jcr:lastModified" />');
-						$form.append('<input type="hidden" name="jcr:content/jcr:lastModifiedBy" />');
-						$form.append('<input type="hidden" name="jcr:content/jcr:created" />');
-						$form.append('<input type="hidden" name="jcr:content/jcr:createdBy" />');
-					} else {
-						$form.append('<input type="hidden" name="jcr:lastModified" />');
-						$form.append('<input type="hidden" name="jcr:lastModifiedBy" />');
-						$form.append('<input type="hidden" name="jcr:created" />');
-						$form.append('<input type="hidden" name="jcr:createdBy" />');
-					}
-				}
-				var data = new FormData(this);
-				$form.find('.Form-Ajax__wrapper').attr('disabled', 'disabled');
-				$.ajax({
-					url: $form.attr('action'),
-					type: 'POST',
-					data: data,
-					processData: false,
-					contentType: false,
-					dataType: 'json',
-					success: function(res,msg){
-						if(window.self !== window.top){
-							window.top.Sling.CMS.ui.confirmMessage(msg, res.title,function(){
-								window.top.location.reload();
-							});
-						} else {
-							Sling.CMS.ui.confirmMessage(msg, res.title,function(){
-								location.reload();
-							});
-						}
-					},
-					error: function(xhr, msg, err){
-						if(window.self !== window.top){
-							window.top.Sling.CMS.ui.confirmMessage(msg, err,function(){
-								$form.find('.Form-Ajax__wrapper').removeAttr('disabled');
-							});
-						} else {
-							Sling.CMS.ui.confirmMessage(msg, err,function(){
-								$form.find('.Form-Ajax__wrapper').removeAttr('disabled');
-							});
-						}
-					}
-				});
-				return false;
-			});
-		}
-	};
-
-	Sling.CMS.ext['content-filter'] = {
-		decorate: function($ctx) {
-			var filterContent = function(){
-				var term = $('.content-filter input[type=text]').val().toLowerCase();
-				$('.sortable tbody tr').each(function(idx,el){
-					if($(el).text().toLowerCase().indexOf(term) !== -1){
-						$(el).show();
-					} else {
-						$(el).hide();
-					}
-				});
-			}
-			$('.content-filter').submit(function(){
-				filterContent();
-				return false;
-			});
-			$('.content-filter input[type=text]').keyup(filterContent).change(filterContent);
-		}
-	};
-	
-	Sling.CMS.ext['content-sort'] = {
-		decorate: function($ctx) {
-			$ctx.find('.sortable').each(function(){
-				var $table = $(this);
-				$table.find('.sortable__header').click(function() {
-					var idx = Array.from(this.parentNode.children).indexOf(this);
-					var $h = $(this);
-					var sortStatus = 1;
-					if($h.data('sort-status')){
-						sortStatus = parseInt($h.data('sort-status'),10);
-					}
-					var name = $h.data('attribute');
-				    var list = $table.find(".sortable__row").get();
-				    list.sort(function(rowa, rowb) {
-				    		var vala = null;
-				    		var $ela = $($(rowa).find('td')[idx]);
-				    		if($ela.data('sort-value')){
-				    			vala = $ela.data('sort-value');
-				    		} else {
-				    			vala = $.trim($ela.text()).toLowerCase();
-				    		}
-				    		var valb = null;
-				    		var $elb = $($(rowb).find('td')[idx]);
-				    		if($elb.data('sort-value')){
-				    			valb = $elb.data('sort-value');
-				    		} else {
-				    			valb = $.trim($elb.text()).toLowerCase();
-				    		}
-				    		$h.data('sort-status', sortStatus * -1);
-				        return vala.localeCompare(valb) * sortStatus;
-				    });
-				    for (var i = 0; i < list.length; i++) {
-				        list[i].parentNode.appendChild(list[i]);
-				    }
-				});
-			});
-		}
-	}
-
-	Sling.CMS.ext['fetch-json'] = {
-		decorate: function($ctx) {
-			$ctx.find('.fetch-json').each(function(){
-				$ctr = $(this);
-				$.getJSON($ctr.data('url'),function(res){
-					var source   = $('#'+$ctr.data('template')).html();
-					var template = Handlebars.compile(source);
-					$ctr.append(template(res));
-					Sling.CMS.decorate($ctr);
-				});
-			});
-		}
-	}
-
-	Sling.CMS.ext['includeconfig'] = {
-		decorate: function($ctx){
-			$ctx.find('.Sling-CMS__include-config').each(function(){
-				var $ctr = $(this);
-				var load = function(){
-					var config = $($ctr.data('source')).find('option:selected').data('config');
-					
-					if(config){
-						$ctr.load(config + $ctr.parents('form').attr('action'), function(){
-							Sling.CMS.decorate($ctr.children());
-						});
-					}
-				};
-				$($ctr.data('source')).change(load);
-				load();
-			});
-		}
-	};
-
-	Sling.CMS.ext['namehint'] = {
-		decorate: function($ctx){
-			$ctx.find('.namehint').each(function(){
-				var $nh = $(this);
-				$nh.parents('.Form-Ajax').find('select[name="sling:resourceType"]').change(function(){
-					var resourceType = $(this).val().split("\/");
-					$nh.val(resourceType[resourceType.length - 1]);
-				});
... 11420 lines suppressed ...