Perform no operation on nl_object_free(NULL).

Passing a NULL pointer would cause a NULL pointer dereference within
`nl_object_free()`.
Returning early on `NULL` pointer is the behavior `free(3)` and other
`nl*_free()` functions.

Is this change correct or `nl_object_free()` is written this way on purpose?