Move the ifdown/ifup logic to the interface definition file

This is a proposed fix for https://bugs.launchpad.net/juju-core/+bug/1341524 , which is a specific issue caused by the 'ifdown interface' performed on the injected cloud-init, this change was introduced in favor of the previous 'service networking restart' as you can see performing a git diff -r 411dbff^! . This change was made because that command were killing dbus on the local provider.

So, my proposal is that instead of forcing the ifdown of the interface, we can use the network interface configuration to pass a set of pre-up command that brings the bridge and the associated interface up after configure it.

Please let me know any observation.

Signed-off-by: Jorge Niedbalski R <niedbalski@gmail.com>
The above error check can be inlined.
if err = tpl.Execute(); err != nil {
    return "", errors.Annotate(err, "cannot update interface names")
}