noop if you try to add an empty array to a set

In my opinion, this should work:

```
foo = Redis::Set.new("foo")
foo << []
```

Currently it throws a Redis::CommandError

Also, added a test to make sure that adding nil to a set still adds an
empty element to the set
Merge empty set fixes with redis-server test fixes