add basic camera handler
fix existing camera check and compare camera port names
fix camera shadow variable that released pointer

Oups, the shadow was causing the reference to go out of scope and release the camera it pointed to.
migrate handler calls to not pass browser ref

It seems as though passing the ref into the handler caused the destructor to get called, definitely not what we wanted.