Refactored spec a bit, still trying to get around errors on rvm 1.8.7