Monitor: avoid null pointer dereference when copying instances
Monitor: avoid null pointer dereference when copying instances

When the copy constructor was added to allow passing a monitor by value
into a lambda the implementation did not account for the possibility of
the watchable having already been destroyed.

Also provide the companion copy assignment to complete the triad.

CopernicaMarketingSoftware/AMQP-CPP,toolking/AMQP-CPP,toolking/AMQP-CPP,CopernicaMarketingSoftware/AMQP-CPP