ipdb: apply transaction only if there was no error
netlink, ipdb: refactor exceptions, stage #1

+ don't use error, use code for socket errors
+ tests:
	* remove secondaries
	* test explicit, implicit and direct transaction types of IPDB
	* test broken netlink case
	* test exceptions in context managers
	* test allowed transaction modes for different cases