Test demonstrating that objects can not be written if a bad CRC is encountered in Bitcask
Change get/put FSM spawning back to being direct from riak_client.

Also removes call to flush the mapred cache used by luke that will be
excised in the next release.  Only needed for legacy MR.
Merge branch 'jdm-put-fsm-perf' into 1.2-perf
Bumped leveldb to 1.2.2p3
Roll riak_kv version 1.2.1p1
Unpin riak_api dep to 1.2 branch
Spawn remote vnodes using start_link rather than start.

Mixed clusters do not have riak_kv_put_fsm:start()
Disable riak_kv service before stopping processes.
Wrapped prep_stop with try/catch.
Merge pull request #404 from basho/jdm-put-fsm-spawn-link

Spawn remote vnodes using start_link rather than start.
Merge branch '1.2' into 1.2-perf

Conflicts:
	rebar.config
	src/riak_kv.app.src
Using random prefered node instead of always first.
Fixing unused var warning
Make riak_client work on non-riak nodes after get/put FSM startup change
Merge pull request #406 from basho/jdm-riak-client-called-off-riak-node

Make riak_client work on non-riak nodes after get/put FSM startup change
Add more dimensions to fsm stats

Exposed the put_fsm per stage timings
Added per stage timings to the get_fsm
Add read repair stat dimensions

Return extra information from get core to support repair reason stat
dimension
Merge pull request #405 from basho/mw_kv_put_randomize_forwardee_node

Randoming kv_put forwardee node
Add dimensions to read repair stats

Add target node, partition type, and repair reason as dimensions
of the read repair stats.
Add timings to vnode_get/put stats

Add per partition stats for get/put.