define data structure for handling infinite sequences

* goal is to mimic lazy-arrays, but with more flexibility
* especially we want more control about finiteness
* also, finiteness and lazy-evaluation should be orthogonal
* and we don't always need lazy-evaluation for infinite structures
add some documentation for infinite-sequences
improve inequality tests with infinity
implement sequential filling for singly infinite sequences
mapping and slicing for infinite sequences
convert infinite-sequence to array (if finite) lists, arrays to (in)finite-sequences
minimum and maximum for infinity
implement indirect sequences and infinite sequences with default values
outside the support
remove special subsequence operation for infinite+-sequence
error for out-of-range when dealing with normal arrays
Merge branch 'master' into infinite-seq
Revert e2c82dd  error for out-of-range when dealing with normal arrays
expose the data+ slot to the outside
small helper macro to port from lazy-array to infinite sequence
some conditions to signal unsupported operations
support special indices :start and :end
implement infinite--sequence using indirect-sequence
extend map-sequence for indirect-sequence so infinite--sequence works
provide two powerful versions of map-sequences
start porting power-series to infinite-sequence, with the obvious stuff