Layer 3 unicast nexthops should update layer 2 protocol fields only if
layer 2 information needs to be added.

Layer 3 unicast nexthops is shared across ipv4 and ipv6. The layer 2
protocol field of the rewrite information is updated every time a packet hits
the nexthop, based on whether the packet is ipv4 or ipv6. There are a couple
of issues with this way of doing things. One is that it is not MP safe and
other is that the protocol field should be updated only if there is any rewrite
information to be added.

There will not be any rewrite information for packets egressing a tunnel interface,
and hence the layer 2 protocol information should not be added.

Closes-BUG: #1394461
Change-Id: If06c41127501ed1f5971228269cfbc8a533518c6
Merge "Layer 3 unicast nexthops should update layer 2 protocol fields only if layer 2 information needs to be added." into R2.0