None circular dependency being detected as a circular dpendency in some instances
Removed @package
Test rewrite for avoid test skip. Related #5592
Adding attributes to fieldsets. Legends are optional for fieldsets.

As the comment says: Every collection is wrapped by a fieldset if needed

A legend is not required for a fieldset.
* Now, if a label is specified, a legend will be created.
* Before, a fieldset would not be wrapped around the markup unless a label was set.
* Now, a fieldset will be wrapped around the markup if $this->shouldWrap is true, regardless if a label has been set for the legend.
Adding attributes to fieldsets, this allows for the space.
Fix in the Collection Element implementation

The current implementation of Collection Element imposes, in
prepareFieldset(), that the child element keys are set sequentially,
starting from 0. After that, populateValues() will remove the unused
indexes and add new ones, according to the input data. This behaviour
breaks the test in this commit, as it expects that the first key will
always be '0', which is not always true, as when collection elements
are dinamically added or removed with javascript. The changes done here
makes Collection Element more flexible and maybe a little faster, as it
saves resources by avoiding unnecessary creation of child elements,
adding them just when neccessary. Also, self::$lastChildIndex can be
sent along with the template, so javascript can set a proper index for
the next element to be added. FieldsetPrepareAwareInterface and all its
references were removed, as they are no longer necessary.
Add test from issue #5010
Ensures that collections with allow_remove don't re-create child elements if they all were removed
Add a check for aliases when checking for circular dependencies. If aliases are used, assume the dependencies aren't circular unless the same alias is used multiple times.
Add more tests that highlight a regression in the new circular dependency check for aliases
Change alias check to pass additional tests
Update BlockCipher.php

empty($data) returns false when data is 0 (as integer), 0.0 (as float) & '0' (as string). These values should be allowed to get encrypted
Remove hydrator from collections
Get an abstract defined service from an alias

When you want to get a service leading to to an abstract factory from an alias.
Fixed gz decompress check for false

Previously if the decompressed value was, say, 0 an exception would be
thrown even though the decompression was successful. By making the check
for false strict the exception will still be thrown if there is an error
    in the underlying PHP functions, while allowing us to return
    decompressed values that would otherwise evaluate to false.
added test  for Zend\ServiceManager\ServiceManager::get  : testGetAbstractFactoryWithAlias
fix test

collection expects:
 - to have an object (array/traversable) and hydrator, or
 - that its target element have an object (allows binding) and hydrator

to be able to extract the values from the object bound to it

previously the collection was being assigned a hydrator. with that gone,
we now have to assign an object and a hydrator to its target element.
Merge pull request #1 from radnan/pull-5746

fix test
Revert "Ensures that collections with allow_remove don't re-create child elements if they all were removed"

This reverts commit 99d16a4f0684bd46e430420c2a29514bfb15fa01.
Ensures that collections with allow_remove don't re-create child elements if they all were removed