`do_get_bucket/1` is also state changing function. If we devide get_bucket API, then it will look like

```
get_bucket(PcPid, BucketName) ->
    case call(RcPid, master_pbc) of
      {error, _} -> %% Some error handling
      {ok, Pbc} ->
          case get_bucket_with_pbc(Pbc, BucketName) of
              {error, _} -> %% ...
              {ok, BucketObj} ->
                  ok = set_bucket_obj(RcPid) % new API
          end
    end.
```