Return None if pkg-config gives a non-zero exit code

This prevents the ugly stack trace that comes with
missing dependencies and makes the build log harder
to read.

Note that a failure to execute pkg-config at all
raises an OSError exception, which is not caught as it
indicates an actual bug or severe misconfiguration.

This is part of a proposed fix for ros/rosdep#34