Fix issue where using the skip* family of decorators still ran the setUp and tearDown test methods.

This closes #86.

I make the testtools skip decorator set the __unittest_skip__ attribute on test methods, which makes them compatible with the unittest functions of the same name. 

I then change RunTest._run_core to look for that attribute and not run setUp if it's present. 
I think so. As far as I can make out, this is what it was doing before, and there are explicit tests for the 2.6 and 2.7 result objects (see test_testcase.py:1303-1364).