Use a proxy process when joining/removing SC nodes

Centralize the proxy process implementation in riak_core_util and
utilize that in riak_core_claimant:bootsrap_members/1.

We use a proxy process for riak_ensemble_manager:{join/remove} to handle
any errors resulting from the riak_ensemble_manager crashing, and
to prevent late responses from getting sent to the claimant in the case
that it already got a timeout for the given operation.
Merge pull request #609 from basho/bugfix/use-proxy-to-prevent-crash-when-joining-sc-nodes-mixed-clusters

Use a proxy process in claimant when joining/removing SC nodes

Reviewed-by: lordnull