Allow file uploads to remote servers.

I am currently blocked on a project where I need to test file uploads on our selenium grid setup. Part of this is because you have Session#file set as an ObsoleteMethod, thus blocking remote file uploading completely. I looked through the java client source code, and figured out how to implement file uploads, which is a process of encoding the file as a zip, base64 encoding that data, and sending it to the  :sessionId/file endpoint as the "file" parameter. Fairly simple to implement, really. I have tested my patch for my current project, and it works flawlessly.

Using it is a simple matter of 

```php
$remoteFilename = $session->uploadFile($localFilename);

$inputFileElement->postValue($remoteFilename);
```

Thanks,
Richard