First attempt at CASSANDRA-7163

This does not work on C* 2.1 due to 7437. I also had to
remove the cas_simple_test because it uses a different
cluster type than the rest of the class.
Moved setup logic back to base class
Use Python Decorator to enable cluster preservation
Correct typo in __init__
Added tearDownClass

When a test run ends on a passing run, the cluster
was not being destroyed. tearDownClass is automatically called
after the final test, and now ensures the cluster is removed
as well as the test_path
Use KEEP_TEST_DIR in tearDownClass
Move all get_cluster logic to dtest

Now all a test needs to use the new features is to
be decorated with @reuseCluster.
Require env var to use cluster preservation

This allows tests to use separate clusters in case
issues arise in the future.
Remove uneeded require
Added freshCluster decorator

This is for tests that require their own cluster but are in
a class marked by canReuseCluster.
Use freshCluster on cql_tests
Merge branch 'python-driver' into 7163

Conflicts:
	cql_tests.py
	dtest.py
Correct merge error.
Reuse clusters in batch test
Clean up imports
Remove test that tracked only dbapi2 functionality
Merge branch 'python-driver' into 7163

Conflicts:
	cql_tests.py
Restored loadmaker.py

Needed for global_row_key_cache_test. Complete removal of dbapi2
dependency not needed at this time.
Update README and Install.md
Merge branch 'python-driver' into 7163