If you don't like or have trouble with Unity, try one of the other Ubuntu variants. I love lubuntu (lxde-based), it's just windows and a panel. Anything that gets between my windows and panel (like Unity) gets thrown over the side without even a wave goodbye. Lubuntu is what xubuntu once aspired to, lightweight and simple.
What is Ubuntu? It's the "easy" Linux distro built on a highly curated version of the debian repository and their apt package system. Mainstream Ubuntu also has Unity. It has a large user base, and a large developer community. It's a nice place to be.
When Unity first hit my laptop, I went running to Mint, only to discover that they've made a search deal. I then looked at other debian-based distros, but I missed ubuntu's curated repository. While flirting with other debians, I discovered lxde, and then lubuntu. I'm there, for now.
They say that you should never re-write a project, but that's in the context of something deployed and operating. It sounds like you are not deployed.
You've put a lot of time into the project so far, so you've learned a lot about the project and its domain.
When you first started your project you didn't know as much as you do now.
So consider using everything you've learned to date, and start over from scratch. Total re-design, total re-write.
If you have trouble explaining the dependencies of your own project to other developers, that's a sign of ... something. If you can't break the project down into pieces for yourself to work on, that's a sign of ... something.
I'm no economist ... I think houses were appreciating while people were upwardly mobile in the economy. So not just more people, but more people with the means to buy a house (or borrow money for same).
Now we're stagnant, and people are talking about the disappearing middle class, and housing prices are flat.
Amusing, but untrue. I took a (long) while to like the ribbon, but I have to say that I find it a large improvement in usability, and it makes it vastly more likely that I will accept "other than the basic/defaults".
It actively encourages exploration. That's good for some use cases, and it's certainly good for Microsoft.