use underscore instead of alter the prototype of arrays. closes #1