CMS-4292 Make Selenium test for Content "shopping cart" feature

Fixed the selection behavior when item is selected not with checkbox.
CMS-4509 Extend REST "/content/create" and "content/update" with permissions parameter
CMS-4501 Node Permissions - Security Tab Layout Adjustments

- altered according to comments from CMS-4331
- also removed RichComboBox.removeSelectedOption - > deselectOption to look nice next to selectOption
CMS-4511 Prepare node export tasks
Merge pull request #1055 from enonic/cms-4501

CMS-4501 Node Permissions - Security Tab Layout Adjustments
CMS-4509 Extend REST "/content/create" and "content/update" with permissions parameter.
Minor changes.
CMS-4518 Make node root-properties start with '_' in index

Added all permissions to indexing. Also changed paths to include undescore. A lot of stuff will maybe break now.
CMS-4518 Make node root-properties start with '_' in index

Fixed breaking stuff after changing index paths
CMS-4518 Make node root-properties start with '_' in index

Fixed merge issue
CMS-4333 Ordering - Add basic sort dialogue
CMS-4521 Add Path property to PrincipalKey
Introduced method PropertyPath.resetAllIndexesTo
CMS-4519 Make sure QueryFieldName is lowercased and used everywhere  Started to fix, but this will take some time

Started using IndexPath object instead of String, which handles the normalization of IndexPaths. Some more refactoring still to do to use IndexPath all the way to the bottom
CMS-4218 Page Templates -  new content type "Template Folder"
CMS-4218 Page Templates -  new content type "Template Folder"
Fixed validation.
CMS-4390 Data V2 - Change DataSet to be a value of type  PropertySet
- Fixed Value.ContentId.toJsonValue and ValueType.ContentId.fromJsonValue
- Added method PropertyArray.addPropertyArray
- When parsing PropertyArray from JSON, PropertyArray is now created even if it has no values.

CMS-4462 Data V2 - Introduce PropertyId
- Changed DefaultPropertyIdProvider to produce unique ids using UUID.randomUUID()
- Introduced PredictivePropertyIdProvider making it easier to test serializing of a PropertyTree to JSON/XML
- Introduced PropertyIdProviderAccessor which PropertyTree with no constructor params uses to pick the PropertyIdProvider to use. By default PropertyIdProviderAccessor uses DefaultPropertyIdProvider, but it's recommended that we are able to make a provide as unique ids but in a faster way (avoiding slow UUID.randomUUID()).
Fixed naming of JS unit tests
CMS-4218 Page Templates -  new content type "Template Folder"
Commented out validation due to an issue with looking up parent node.
CMS-4218 Page Templates -  new content type "Template Folder"
Improved exception messages.
CMS-4501 Node Permissions - Security Tab Layout Adjustments

- moved api.ui.security to api.security
- updated combobox so clicking on row will toggle selected state
- refactored api.ui.selector.list.ListBox to inherit api.dom.UlEl