Refactoring code in RPS branch

@gabebw @jsteiner
I don't think you want a `!` here. Bangs should only be used when it is the dangerous version of another less dangerous method of the same name.