add .chooseFile(selector, localFile, cb), .file() protocol, .uploadFile command

This PR adds a .chooseFile() method to be used with `<input type=file`

I thought a different API than .keys/.addValue/.setValue was better to handle file uploads.

fixes #129