Repetition arguments 

Added spec works and no specs are broken.

I rebaselined `repetition-arguments` branch with master. This is why GitHub shows a bunch of commits from master in here. Let me know if there is a better workflow for doing this.

I squashed all my commits into once since they were not very informative anyway.