Work toward Python 3.4 support and testing

Change-Id: Ieae7819e0489ae19b7fcfb63497e06527c918b5c
Remove superfluous except/re-raise

This exception code catches all exceptions, and then always raises them
again.

More interestingly, it uses excutils.save_and_reraise_exception
incorrectly (outside a `with` statement), which triggers the pylint test
designed to catch exactly this.

Change-Id: Iab9d69944cbae5257682ac65ff2b8fba3ef7017e
Move disabling of metadata and ipv6_ra to _destroy_router_namespace

I noticed that disable_ipv6_ra is called from the wrong place and that
in some cases it was called with a bogus router_id because the code
made an incorrect assumption about the context.  In other case, it was
never called because _destroy_router_namespace was being called
directly.  This patch moves the disabling of metadata and ipv6_ra in
to _destroy_router_namespace to ensure they get called correctly and
avoid duplication.

Change-Id: Ia76a5ff4200df072b60481f2ee49286b78ece6c4
Closes-Bug: #1383495
Merge "Remove superfluous except/re-raise"
Merge "Work toward Python 3.4 support and testing"
Merge "Move disabling of metadata and ipv6_ra to _destroy_router_namespace"