mock: use blinker signal objects to replace {add,remove}_depth_frame_listener

Use the blinker library to handle signal handling. The main win here is
that handlers are kept as weak references and so we do not need to worry
about explicitly disconnecting signal handlers before they will be
garbage collected.