OCS API for server-to-server sharing

OCS API for server2server sharing as part of #12285 .

This is work in progress, I just want to give people a chance to look at it early.

This is how the API will look like:

POST to create new server2server share
```
http://localhost/oc/ocs/v1.php/cloud/shares
```

post data: shareWith, token, name, remote, remote_id, owner

POST to notify that the share was accepted
```
http://localhost/oc/ocs/v1.php/cloud/shares/{shareId}/accept
```

post data: token

POST to notify that the share was declined
```
http://localhost/oc/ocs/v1.php/cloud/shares/{shareId}/decline
```

post data: token

POST to unshare server-to-server share
```
http://localhost/oc/ocs/v1.php/cloud/shares/{shareId}/unshare
```
post data: 'token'
> Bob creates a public share "foo" (with token "bar")

It is not exactly a public link. Bob will select Alice from the share drop down or send the link to her by defining she as recipient by enter something like alice@herCloud.org. But the underlaying technology will be similar to public links.

> 3. Alice clicks the "Accept share" button (which doesn't exist yet) and it gets added.

Yes, in this step he will send back the accept message to Bob that he gets informed that Alice accepted the share. But that's just a information for Bob, Bob can't accept the share for Alice on her server with this call.