changing how columns are being added

It used to be that when columns were being added, they were being pushed into an array that was already on the scope.  This causes angular to bind on *every single push*.  Instead, I changed it so that there's only one write to the scope, making it bind only once.