SPOP optional count argument. (issue #1793, supersedes pull request #1803)

More details of implementation in issue https://github.com/antirez/redis/issues/1793.
Previous pull request, based on antirez:3.0 is now deprecated. This pull request supersedes it.

---

Commit message:

Added <count> parameter to SPOP:
* spopCommand() now runs spopWithCountCommand() in case the <count> param is found.
* Added intsetRandomMembers() to Intset: Copies N random members from the set into inputted 'values' array. Uses either the Knuth or Floyd sample algos depending on ratio count/size.
* Added setTypeRandomElements() to SET type: Returns a number of random elements from a non empty set. This is a version of setTypeRandomElement() that is modified in order to return multiple entries, using dictGetRandomKeys() and intsetRandomMembers().
* Added tests for SPOP with <count>: unit/type/set, unit/scripting, integration/aof
--
Cleaned up code a bit to match with required Redis coding style