Avoid requiring the PHP readline extension if not necessary
The autocomplete.js code now checks for a data-autocomplete-delay attribute on the input element to override the default 1 second delay.
Link accessions to existing descriptions via parent slug

Indentation edits
Add configuration option to digitalobject:load task
Repository records - additional access points and facets.

Refs #5596.
Stop tracking empty uploads/ directory

It makes it harder when we use a symlink instead or mount points.
AtoM can still create the directory if it doesn't exist.
Support for params in cache_engine

cache_engine used to be a string containing the name of the class used in our
internal cache, e.g. sfAPCCache, sfAPCuCache, sfMemcacheCache, etc...
This commit adds support for a dictionary (class and param keys) in addition
to the old single-string format. This is very useful when we need to pass extra
settings to the cache engine, e.g.

New format:

  cache_engine:
    class: sfMemcacheClass
    param:
      [dict: see sfMemcacheClass for more details]

Old format (still supported):

  cache_engine: sfAPCCache
Add new storage factory for distributed sessions

Our default storage factory has always been QubitSessionStorage which extends
sfSessionStorage. In scenarios where AtoM is deployed across multiple nodes,
sessions musn't be stored locally. This commit adds QubitCacheSessionStorage,
which extends sfCacheSessionStorage.

Example (factories.yml):

prod:
  storage:
    session_name: symfony
    session_cookie_httponly: true
    session_cookie_secure: true
    cache:
      class: sfMemcacheClass
      param:
        ...
Move factories.yml to config/
Remove unused file
Add gearman_job_server setting
Remove digital objects from AIPs in ES

Fixes #7016
Sort query and add sortPicker widget

Style tweaks

Add class option to sortPicker, add .shared CSS class to have the sort picker
playing well when there are top facets.
Added CLI arg for site URL to EAD bulk export.

CLI tasks have no knowledge of hostname, etc., so can't automatically
generate a full base URL for exported XML. Added a CLI arg to the
EAD bulk export tool to specify a URL. Integrated this into the existing
EAD template.
Base URL now optional, change EAD identifier
The EAD identifier attribute in <eadid> now uses the top
level information object's slug instead of url_to().
Fix asset paths in EAD export from CLI bug #5954
Remove executable bit from normal files
Move Elastica to vendor/

We were loading classes like Elastica/Transport/Memcache twice before this
change, but the problem didn't show up until we started using php5-memcache
which includes its own Memcache class. Moving Elastica under vendor/ avoids
Symfony1 from autoloading it, as we don't need it because it's being loaded
via the Symfony2 namespace loader (see ProjectConfiguration.class.php).
Attach containers to existing ones refs #6579

Physical containers being imported via EAD will now check to see if
there's an existing physical container attached to the collection,
and use that instead of duplicating now.
Enhance statistics output for import:bulk #7108