Generate the primitive array schemas from a template to save 8-fold duplication,
adding an iterable member to IntArray etc so that arrays can be iterated
efficiently (see ceylon/ceylon-compiler#882) and a clone() method (see #437).
Update the output from the template
Fix ObjectArray so like the primitive arrays it has an iterable attribute
and a clone() method.

Fixup ObjectArray.iterable
Fix a two bugs in Range (taking() and includesRange()) and also add a trivial optimization for skipping().
Overflow detection disappeared when @gavinking wrote the ceylon version of IntegerRangeBy and it wasn't spotted because the optimization tests weren't being run on the JVM. Let's add them back in.
Revert "more string tests" because equals() is refined on String so that it
doesn't respect the semantics of List.equals().

This reverts commit 764b7970ec6fccc49f33eb0ec193d56042e49b8a.
Correct one of the string tests added by @chochos because filter only promises to return an Iterable (which doesn't refine Object.equals().