Workaround InSim losing references to callbacks

InSim is keeping only weak references to the bound callbacks to packet
events. These may be lost at any time due to the garbage collection, as
there is no strong reference to the callbacks. So, the InSimConnection
class now keeps references to its own callbacks.

Moved bind calls to earlier, to ensure they are not re-bound across
initialise attempts.