Merge branch 'hotfix/3429'

Close #3429
Fixes #2628
Fixes #3075
Fixes #3108
Fixes #3182
[#3376] Removed usage of /e modifier with preg_replace in Zend\Filter

- Modified PregReplace to test for the "e" modifier and raise an
  exception when found
- Modified SeparatorToCamelCase to use preg_replace_callback instead of
  /e modifier
[#3376] Replace PCRE /e modifier with preg_replace_callback()

- Replaced usage of preg_replace with "/e" modifier with
  preg_replace_callback() using a closure
[#3376] Added test for new behavior

- Added a test displaying that an exception is raised when passing the
  "e" modifier in a pattern
Added option to change format in options when DateTime is build via Factory
Added option to change format in options when DateTime is build via Factory
Merge branch 'feature/datetime_factory_format' of github.com:pdobrigkeit/zf2 into feature/datetime_factory_format
Fixed usage of Traverseable for $options.
Did not want to duplicate the check done in Element, but rather used to already converted $this->options instead
Merge pull request #3436 from weierophinney/hotfix/3376

Hotfix/3376
[#3376] Better fix

- The main point is that we ensure hasItems() internally calls
  internalHasItem(). As such, removing the multiple keys ensures we
  don't have issues with index order of mock objects. Test now passes on
  both 3.7.12 and 3.7.13, on all PHP versions used.
Merge branch 'hotfix/3376' of https://github.com/weierophinney/zf2 into develop
Better content-type negotiation

- Don't pull the header value on each iteration of the loop
- Get the media type of the header value before comparisons
- Ensure there is no whitespace around the media type
Merge branch 'hotfix/content-type-negotiation' into develop
Close #3442
Added Test
Fixed comment return val
Merge pull request #3437 from pdobrigkeit/feature/datetime_factory_format

Feature/datetime factory format
Forward #3437
[#3376] Better fix

- The main point is that we ensure hasItems() internally calls
  internalHasItem(). As such, removing the multiple keys ensures we
  don't have issues with index order of mock objects. Test now passes on
  both 3.7.12 and 3.7.13, on all PHP versions used.
Merge branch 'hotfix/3376'

Backport #3436 to master
Updated session manager to register_shutdown_function rather than a destructor

- Fixed an issue where an exception was not properly defined in use
- Fixed a flash messenger test by clearing session storage on teardown
- Removed a no longer valid test on sessionmanagertest

Conflicts:
	library/Zend/Session/Storage/SessionArrayStorage.php