L3 support for synchronous driver model.

Mostly completed. Need to sort out update_router as well as
fixing metadata use cases

Change-Id: I350fa1315da301374ffa5650ac9e8a192b6e5900