Fixes #261 Squashing non-index attributes into a single mutation. This optimizes ingest and query.

This isn't quite ready for a full review- though anyone is welcome to start looking through the code. There's a ton of things that need redesigning.
Not using a visibility here seems dangerous, as a simple scan can now access all the data in the table.  

A potential solution would be to combine the visibilities with an "|" operator.  This may actually leak information about visibilities for data that the user can't see however.

Another option would be to only write the rows for visibilities that are the same in the same row.  this would require some preprocessing before evaluation however, and Im not really sure how complicated that would be.