[connman] fix crash and report error properly

connect_service() calls __connman_service_connect() which may in turn call
reply_pending() which unrefs service->pending and sets it to NULL. Therefore,
connect_service() needs to check service->pending for NULL prior to calling
dbus_message_unref() on it.

Also, __connman_error_failed() expects a positive error code.
Merge pull request #87 from monich/service_pending_crash

service: fix crash and report error properly