allow running upgrade tests from local C* source

For upgrade testing this allows you to set LOCAL_MODE to true, and define CASSANDRA_DIR as the source of code for upgrade testing (instead of pulling source remotely from git).

Tests are ALL run locally or ALL remotely (there's no way to mix).

The code will checkout each branch/tag in the CASSANDRA_DIR repo, and build it before the test starts, so the local repo should be in a state where switching is possible.