Arrays comprehension

Implements and closes #896

Was not as hard as expected, not bad for less than 12 hours of thinking, coding and sleeping.