core: Cloud init wants DNS inside interface

Cloud-init expects the DNS information inside the network interface
definition, like this:

  iface eth0 inet static
    address 192.168.0.1
    netmask 255.255.255.0
    gateway 192.168.0.1
    dns-nameservers 1.1.1.1 2.2.2.2
    dns-search example.com
  auto eth0

But we put it outside, like this:

  dns-nameservers 1.1.1.1 2.2.2.2
  dns-search example.com
  iface eth0 inet static
    address 192.168.0.1
    netmask 255.255.255.0
    gateway 192.168.0.1
  auto eth0

The way we do it looks more correct, as the list of name servers and
search domains isn't specific to a network interface, but common to all
of them. But cloud-init doesn't like this. This patch changes the engine
so that it generates the format that cloud-init wants.

Change-Id: I79f758544496bedaf4e220639a9768a2518579f6
Bug-Url: https://bugzilla.redhat.com/1067906
Signed-off-by: Juan Hernandez <juan.hernandez@redhat.com>
(cherry picked from commit 4f34b420dab30ef40966aa3b5b7c8b0a0638bc65)