better status codes for libuv objects for better state handling

@loladiro can you review?