Add validation for the dvr router l3agent binding
Validates dvr router add/remove cases to the
l3agents running in different dvr modes such
as "dvr_snat" and "dvr" mode.
In the case of distributed virtual routers it
does not make sense to move distributed routers
from one "dvr" node to another "dvr" node.
Also added some unit tests that addresses the
validation of legacy routers to dvr agent and
dvr routers to legacy agent.
Partial-Bug: #
1369721
Change-Id: I008dda6abaf25094b11f3730b951e096dd3b7025