Can't aggregate arrays
I use:
CREATE AGGREGATE array_agg_mult(anyarray) ( SFUNC = array_cat, STYPE = anyarray, INITCOND = '{}');
and queries like:
SELECT array_agg_mult( ARRAY[[x,x]] ) FROM generate_series(1,10) x;
Note that you must aggregate 2-dimensional arrays, so you'll often want to wrap an input array in a single-element ARRAY[array_to_aggregate]
array constructor.