Generator\Integer
Added failing test for uniformity of distribution
Robust check for $lowerLimit and $upperLimit

Since we can't use type hinting for scalar values we have to manually
check the boundaries of the domain in the constructor.
Generating Integer values from the interval [0, size]
Avoid overflow when generating negative integers with PHP_MIN_INT as
boundary.

Signed integers goes from −9,223,372,036,854,775,808 to
9,223,372,036,854,775,807 on a 64 bits system.

The generator algorithm was doing this:

Context:
$upperLimit = 0;
$lowerLimit = −9,223,372,036,854,775,808;

rand(0, ($this->upperLimit - $this->lowerLimit));

which was causing a 0 + 9,223,372,036,854,775,808 which is a clear
overflow.
Ensured lowerLimit < upperLimit and that it is not possible to go out of
the domain during the shrink.
Checking that Generator\Integer:shrink/1 argument belongs to the domain
before shrink it
Merge pull request #13 from giorgiosironi/integer_generator

Generator\Integer