Performance tuning: Array.push instead of Array.concat

This simple change provides a massive speed up in Firefox (See  http://i171.photobucket.com/albums/u320/boubiyeah/ScreenShot2014-11-13at161151_zps32244a0b.png)

concat creates a new Array everytime and it quickly made the GC choke. Strangely, while chrome do get a small performance boost, it's nowhere near as dramatic as in FF (they either have a better gc or concat implementation).

I dislike that imperative style compared to the previous functional style but I think the style/perf tradeoff is worth it. 
It looks like `push.apply/ is fastest in later versions of Chrome, but the forloop method is faster in firefox.: http://jsperf.com/appending-to-an-array-push-apply-vs-loop