Check process existence when listing nbserver processes

While implementing [nbopen](https://pypi.python.org/pypi/nbopen), I realised that listing the available nbservers gave me info for a dozen servers that had died without cleaning up their info. This implements a simple check that a process with the given pid exists. This isn't perfect, because another process could be reusing the same pid, but the chances of that are fairly low, and it can't give a false negative, as far as I know.

I haven't tried to implement a .NET version of check_pid for the `_process_cli` module. The ctypes version for Windows is taken from code in `IPython.parallel` - this is simplified to use the new utility function.