MPD protocol: make it more robust

 * play command: no args or -1 does "unpause"
 * random command: noop instead of error
 * single command: fix the logic to accept the argument
 * optional ranges allow -1 to mean no argument