Fix up error messages inline with latest stables

redis-server v2.8.1 & redis-rb 3.0.6
Handle expired key's ttl response correctly

As per the [docs][] we should return -2 if the key does not exist, as opposed to a key without a ttl associated with it

[docs]: http://redis.io/commands/ttl
Fix failing specs for redis-server 2.8.1

* raise_argument_error now takes a match string, allowing us to return a different ERR string for the same command. (Yay for mset returning two different error messages!)
* Update wrong type error to return new string
Revert accidental changes to .rspec
Return -2 from ttl if key flat out doesn't exist
Update values to be floats for accuracy's sake
Flatten opts argument to zrevrangebyscore

Comes through as a nested array for some reason. [["WITHSCORES"]].include?("WITHSCORES") # => false, which breaks us
Merge branch 'master' into fix-specs-against-redis-server
Merge branch 'master' into fix-specs-against-redis-server
Merge pull request #82 from guilleiguaran/fix-specs-against-redis-server

Fix specs against redis-server 2.8.1