Merge pull request #2751 from mtbc/managed-repository-template-path-expansions

Managed repository template path expansions (rebased from dev_5_0)
Merge pull request #2752 from mtbc/trac-12362-group-owner-change-permissions

fix #12362, #12396: allow group owner to change permission level (rebased from dev_5_0)
Add graphite metrics support
Add 'reset' command to fulltext.Main

The reset command takes an optional long value, defaulting
to 0, which will become the new next value for indexing.
Silence method_time warnings & errors
Export --reset in admin.py
Lower logging levels in FullTextIndexer

Neither of these is particularly helpful, especially
when the indexer is being re-run. Removing.
Add --dryrun command
Disable quartz and fix init error handling
Refactor error handling into the log loader

Since some log loaders may be able to handle errors better
than others, we move the error handling there and notify
them via a `FullTextFailure` event.
Add sequential method which mimics regular indexing
Refactor eventLogLoader into a static field
SqlAction: add getEventLogPartition

This method uses PostgreSQL windowing functions
to only take the last event log referring to a
particular IObject. This prevents the same object
from being reindexed a number of times.
Minor fulltext.Main modifications for new implementation

In order to support multipl persistent event log loaders,
the PELL class from the "eventlogs" package must be
imported so that checks are performed against it and *not*
against the class of the same name in the "fulltext" package.
Add 'stop' flag to EventLogLoader
Add NullMetrics to circumvent null checks
EventLogQueue: new persistent event log loader (See #11948)

This PELL should significantly improve the performance of
the background indexer. Making use of the new partition
method in SqlAction, it should not re-try multiple objects.
And by adding a failure queue, it should not get stuck when
an object is unindexable.
Make ome.system.metrics interface driven

In order to make it clear when a `NullMetrics`
implementation is not properly overriding a
method, new interfaces have been introduced.
All of the concrete implementations are now
prefixed with 'Default'.
Minor improvements to full-text logging
Improve metrics configuration