Guard Process.kill pid 1 spec in case user owns it

In some environments, the user running the spec might own pid `1` (even without being root).  It's also possible this spec could be run from _as_ pid `1`.  This is the case with Docker, in which the command you pass to `docker run` is run as pid 1.

```
jemc@localhost~/1/docker> sudo docker run -t -i rubinius ps
  PID TTY          TIME CMD
    1 ?        00:00:00 ps
```

In this situation, MRI will allow killing of pid 1 without exception (and so will `kill -9 1`).

The spec needs to guard this test and skip it when the current user owns pid 1.
@brixen - I don't see a `Process` method for getting the uid of a process by pid (to replace the shell command).  Interestingly, I do see one for getting the gid of a process by pid - `getpgid`.  So, it may be sufficient to check that `unless Process.getpgid(1) == Process.egid`.  I'll have to try this in the docker container to see if it covers at least that case.

And yes, this could be wrapped up in a silly-named guard if desired. `as_user_not_in_group_owning_pid_1 do ... end`?

**Alternatively**, I wonder what part of the behavior this is really trying to spec.  Are we really caring about `EPERM` specifically here, or just that `Process.kill` can raise a `SystemCallError` of some kind?  Because we may be able to find another `Errno` to test for that doesn't need a guard.