oft: handle missing test module/class docstrings
use class decorators to mark tests that shouldn't be run by default
rewrite test spec code in terms of groups
oft: accept test/group names in positional arguments

The --test-spec option is now deprecated and will be removed.
add group decorator and smoke test group

The smoke group is intended to be very fast while covering most important
features.
oft: list all tests for --list, not just the ones matching the test spec
oft: improve help text
oft: remove unused command line options
oft: improve --list output for disabled and non-standard tests
oft: output available test groups in --list
Merge branch 'annotations'

Conflicts:
	oft
oft: remove profile feature

This was rarely used and will be replaced with the test-file feature.
oft: add test-file option

This option reads a file that has one test name or group name per line.
Whitespace and comments starting with '#' are ignored. The resulting tests are
unioned with those given on the command line.

The main usecase for this is freezing a set of tests to be run against a
switch. You can use the --list-test-names option to get the current set of
tests in a format suitable for use with this option, then manually edit
it to add, remove, and comment tests.
basic: reenable tests and move out PacketInDefaultDrop
oft: always make unittest.TextTestRunner verbose
oft: make --verbose the default and add --quiet to negate it