MODE-1856 More improvements to reduce indexes of no-op property changes

Changed the algorithm in WritableSessionCache that persists changes
so that it more efficiently and correctly calculates whether a change
in a property is an effective change in the node that requires the
node to be indexed.
MODE-1856 Improved the performance of determining PropertyType from values

Changed the PropertyType.discoverType(...) logic to make it faster
given our existing implementation classes. Also added a test case
to verify behavior.
MODE-1856 Simplified comment, per review
MODE-1856 - Further improved the index update operation, by making sure only nodes with property changes or parent changes (which affect the path) trigger index updating.
MODE-1856 - Fixed index rebuild options in the AS7 subsystem.