Pull request for Issue665

@dretrex 
@davidChevrier 
Try and use ```at()``` instead ```[]``` when pulling items out of lists.  ```[]``` is really only better than ```at()``` when setting the value at that location in the list.  Typically, at(), value(key), and similar functions are faster than [] implementations.