Add #riak_core_fold_req_v2 record, part 1 of 2

Move definition of ?FOLD_REQ to v2.

Add functions to riak_core_util.erl to create v2 versions of the
record: arity 1 (upgrade #riak_core_fold_req_v1 record to the v2
record), arity 2 (args = the two record elements of the v1 record)
and arity 4 (args = the four record elements of the v2 record).

Disable request forwarding in riak_core_vnode:forward_or_vnode_command()
if the request explicitly contains not-forwardable annotation.
Add riak_core_capability handling for fold requests
Refactor make_fold_req(), add make_newest_fold_req(), add EUnit tests

Partially addresses https://github.com/basho/riak/issues/407 ... a patch
to riak_kv is also required.
fold unnecessary make_fold_req2/4 into make_fold_req/4

also renamed make_fold_req3 to make_fold_reqv, since the 3 didn't make
sense any more, but it's still nice to have the name slightly different
than the exported functions

also fix a bit of doc
Merge remote-tracking branch 'origin/slf-vnode-ops-opts' into develop

Conflicts:
	src/riak_core_util.erl (fixed -SLF)