Expose delete_mode to riak clients

This change exposes the `delete_mode` parameter to riak clients, so it can be controlled on individual DELETE operations.

This is most useful if the global `riak_kv.delete_mode` is set to `keep`, allowing a cleanup job (e.g. using
map/reduce) to later delete with mode `immediate` or a time interval.  Because we've been using EE w/fullsync, we need to keep tombstones around until we're certain that they have been propagated to connected clusters; and setting the delete_mode to a high timeout value is hard on the memory and the timer wheel.

The parameter `delete_mode` is also exposed to http and protocol buffer clients.  See https://github.com/basho/riak-erlang-client/pull/194 and https://github.com/basho/riak_pb/pull/102

This patch is against the 1.4 branch.