Natural lowerLimit must be greater than 0

Added use for `InvalidArgumentException`
Natural lowerLimit must be lower than the upperLimit
Natural limits must be Integers
Natural cannot shrink values that does not belongs to the domain
Merge pull request #23 from giorgiosironi/more_robust_natural_generator

More robust natural generator
Safe `define` for PHP_MIN_INT
From PHP_INT_MIN to ERIS_PHP_INT_MIN
Failing test with current Integer

1) Eris\Generator\IntegerTest::testShouldEventuallyGenerateAllTheValues
Only generated the following values: array (
        0 => 5,
        1 => 4,
        2 => 3,
        3 => 6,
        )
Failed asserting that 4 matches expected 5.
@mirkobonadei
Improved Integer generation algorithm still avoiding overflows
Rebased over master and migrated from PHP_INT_MIN to ERIS_PHP_INT_MIN