Clean up handling of test control env vars.

NOTE: this changes the semantics of DXTEST_FULL so that it also implies
DXTEST_FUSE.

- Define three independent classes of features that might not be
  testable in certain environments: creating apps, running jobs,
  mounting FUSE filesystems. All are off by default.
- dxpy_testutil defines all the variables (TEST_CREATE_APPS, etc.) that
  control whether specific classes of tests can be run.
- Individual tests use @unittest.skipUnless to skip tests if they find
  themselves not running in an appropriate environment.