Improve compaction of repaired/unrepaired sstables

Patch by marcuse; reviewed by Aleksey Yeschenko and Sankalp Kohli for CASSANDRA-8004
Merge branch 'cassandra-2.1' into trunk

Conflicts:
	src/java/org/apache/cassandra/db/compaction/CompactionManager.java
	src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
	src/java/org/apache/cassandra/db/compaction/LeveledManifest.java
	src/java/org/apache/cassandra/db/compaction/SizeTieredCompactionStrategy.java
	test/unit/org/apache/cassandra/db/compaction/CompactionsTest.java
	test/unit/org/apache/cassandra/db/compaction/LeveledCompactionStrategyTest.java
Make CFMetaData.memtableFlushPeriod volatile
Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
	src/java/org/apache/cassandra/config/CFMetaData.java
Merge branch 'cassandra-2.1' into trunk
Collapse CFMetaData imports
Merge branch 'cassandra-2.1' into trunk

Conflicts:
	src/java/org/apache/cassandra/config/CFMetaData.java
Remove some dead thrift code
Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
	src/java/org/apache/cassandra/cql3/statements/CreateTableStatement.java
Merge branch 'cassandra-2.1' into trunk
Optimize partitioner tokens

Patch by blambov, reviewed by jmckenzie for CASSANDRA-8230
Merge branch 'cassandra-2.1' into trunk
Fix Cassandra crash when running on JDK8 update 40

Patch by Michael Schuler; reviewed by Robert Stupp (CASSANDRA-8209)
Merge branch 'cassandra-2.1' into trunk

Conflicts:
	build.xml
Prep for 2.1.2
Fix News.txt
Merge branch 'cassandra-2.1' into trunk

Conflicts:
	NEWS.txt
	build.xml
Abort liveRatio calculation if the memtable is flushed
patch by Oleg Anastasyev; reviewed by jbellis for CASSANDRA-8164
Merge branch 'cassandra-2.0' into cassandra-2.1
(cqlsh) SELECT ... TOKEN() function broken in C* 2.1.1

patch by Philip Thompson; reviewed by Mikhail Stepura for CASSANDRA-8258