Use nose skip exception conditionally

testtools and nose disagree on the exception raised for skipping
tests with python < 2.7 (see inline comments for exact details).

This monkey-patches testtools to recognise the nose skip exception.
However, due to nose being deprecated we hide this behind an
environment variable to make it an opt-in fix.

While we're there, modify tempest.test.api.utils @skip_unless_attr
decorator to raise from tempest's BaseTestCase rather than
testtools.TestCase directly.

Change-Id: I13a8f374e879799870bc9193a1ddbdc8d6abb73c