Better SmartOS support in the process checker

Updated the code to reflect the folllowing:
- psutil on SmartOS does not report shared
- SmartOS is unix, has file descriptors
- SmartOS does have ctx switching information

Updates
- Sets `real` to None (like win32)
- Moves the check for is_unix (and file descriptors) out of the is_win32
	branch
	- Looser coupling
- Moves the check for ctx switching out of the `real is not None` branch
  - Looser coupling