Here are the discussed additions. I never made a pull request before, so I hope I did it correctly.
I added a lot of comments to help future users of the remote to understand how to use it, but if you feel that they are too much, feel free to change them. I tried to conform to the style of the rest of your project, but if something is not to your taste, please adjust it.
If you ever find the time to add the additional feature we discussed, please let me know and I will expand the API.
Here are the discussed additions. I never made a pull request before, so I hope I did it correctly. I added a lot of comments to help future users of the remote to understand how to use it, but if you feel that they are too much, feel free to change them. I tried to conform to the style of the rest of your project, but if something is not to your taste, please adjust it. If you ever find the time to add the additional feature we discussed, please let me know and I will expand the API.