Added header-record based column arrangement.

You can now pass {"header":true} as an option argument to to.array(). It
will return an array of objects the same as using {"columns":[..]}
would, except it uses the header record to obtain the column names.