There indeed are, but you can’t force a volunteer to work on something they don’t want to work on.
One person’s essential need is another person’s superfluous feature.
We can’t force developers to work on what they don’t want to work on. So should the project refuse to accept bindings just because some features you deem essential haven’t been implemented yet? Some developers had an essential need for these exotic bindings so they implemented it and donated them to the community. We can’t say “no, take your new exotic binding and shove it because all new contributions are being refused until someone works on this issue over here.” That isn’t how open source development works and trying to operate like that is a certain way to kill a project like this.
Essentially yes, it is almost wholly rewritten, or at least drastically refactored from the original 1.x code. This was required to achieve features like automatic discovery of devices and the like.
The issue is already open and it comes up on the forum frequently. I suspect if it were easy to implement it would have already been done.
Another way for non-developers to “vote” for features they deem important is to put some money behind the request. OH works with the Introducing BountySource for funded development which lets users contribute money which will go to a developer(s) who add a desired feature or fixes a desired bug.
Open source developers tend to be a little quirky when it comes to money involved with OS projects, but someone may take up the task if they know they will get a bit of cash out of it.