rename: prevent rename when erlxc_drv is forked

Actively monitoring the state of the container is done by forking and
sending a message back to the erlang process on state change. The forked
process has a reference pointing to the container, so the container
can't be renamed until the monitor is closed.

Since the C code is just polling the state of the container, the
functionality of async_state_notify() could be re-written in erlang:

* spawn a child erlang process
* call state/1
* if the state changes, send a message to the parent
* otherwise, sleep