Cleanup and move hardcoded system tables away from CFMetaData

patch by Aleksey Yeschenko; reviewed by Sylvain Lebresne for
CASSANDRA-8261
Fix regression in HadoopCompat from CASSANDRA-7579

Patch by jmckenzie; reviewed by bwilliams for CASSANDRA-8292
Merge branch 'cassandra-2.1' into trunk
Fix millisecond timestamps in Tracing

patch by Aleksey Yeschenko; reviewed by Sam Tunnicliffe for
CASSANDRA-8297
Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
	CHANGES.txt
	src/java/org/apache/cassandra/tracing/Tracing.java
Merge branch 'cassandra-2.1' into trunk

Conflicts:
	src/java/org/apache/cassandra/config/CFMetaData.java
	src/java/org/apache/cassandra/tracing/TraceState.java
	src/java/org/apache/cassandra/tracing/Tracing.java
Disable SSLv3 for POODLE

patch by Jeremiah Jordan; reviewed by jasobrown for CASSANDRA-8265
Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
	CHANGES.txt
	src/java/org/apache/cassandra/transport/Server.java
	src/java/org/apache/cassandra/transport/SimpleClient.java
Merge branch 'cassandra-2.1' into trunk
ninja-fix nit from casandra-8265 commit (make repeated strings a constant)
Merge branch 'cassandra-2.0' into cassandra-2.1

Conflicts:
	src/java/org/apache/cassandra/thrift/CustomTThreadPoolServer.java
	src/java/org/apache/cassandra/transport/Server.java
	src/java/org/apache/cassandra/transport/SimpleClient.java
Merge branch 'cassandra-2.1' into trunk
create the cache name format only once
make sure streams get closed
Extract the construction of InvalidRequestException into separate
methods.
Extract ColumnDefinition.kind checks
Replacing switch by polymorphism to convert relations into restrictions
Introduce Restrictions class
Use polymorphism instead of switch to create IndexExpressions
Moves methods from SelectStatement to Restrictions