Re-applied old patch from KAFKA-139

Had to make some additional changes based on further mainline work. Leaving
KafkaProject.scala in place as a reference for now.
Updated SBT JAR to 0.12.1
draft patch
Merge branch '0.8' of https://git-wip-us.apache.org/repos/asf/kafka into 0.8
KAFKA-707 Improve error message in the producer when sending data to a partition without an active leader; reviewed by Jun Rao
Revert "draft patch"

This reverts commit aa1546b0907c959a4df90a7e3d48bad0890d1f2f.
KAFKA-705 Allow restarted replicas to follow a leader that is on a shutting down broker; reviewed by Neha Narkhede.
KAFKA-139 cross-compile multiple Scala versions and upgrade to SBT 0.12.1 patch by Derek Chen-Becker reviewed by Joe Stein
Merge branch '0.8' of https://git-wip-us.apache.org/repos/asf/kafka into 0.8
KAFKA-139 cross-compile multiple Scala versions the dependency jars moved and the bin scripts needed to point to the new locations
KAFKA-705 Shutting down brokers should not receive stop replica requests if controlled shutdown status is incomplete; reviewed by Neha Narkhede
KAFKA-722 Fix the classpath in kafka-run-class.sh; reviewed by Neha Narkhede
Merge branch '0.8' of https://git-wip-us.apache.org/repos/asf/kafka into 0.8
Add ReplicaFetcherThread name to mbean names; kafka-726; patched by Swapnil Ghike; reviewed by Jun Rao
KAFKA-708 ISR becomes empty while marking a partition offline; reviewed by Jun Rao
Merge branch '0.8' of https://git-wip-us.apache.org/repos/asf/kafka into 0.8
KAFKA-727 broker can still expose uncommitted data to a consumer; reviewed by Neha Narkhede
KAFKA-714: ConsoleConsumer throws SocketTimeoutException when fetching topic metadata; reviewed by Neha Narkhede
KAFKA-730: Update zookeeper classpath in system_test/migration_tool_testsuite/0.7/bin/kafka-run-class.sh; reviewed by Neha Narkhede
KAFKA-728 snappy jar missing from path in kafka-run-class.sh patch by John Fung reviewed by Joe Stein