Sorry, wall of text!
I'm subscribed on Github, and I'm not seeing to many forks - things seem to be fairly centralized. Of course, very few people are working on major rewrites, most are just doing small bug-fixes.
Are you looking at the "branches" instead of the "forks"? There's only really 1 mainline branch (though we've got a few others randomly floating around as well), but if you go to the github page and look in the top right corner there are over 600 different forks of the mainline, i.e. personal versions that people have split off, either for contribution purposes or just because they want to compile their own versions personally.
And yeah, the general way that things get updated is:
1) Person has an idea
2) Person tosses the idea up on the chat, forum, or github and talks with the main developers on it (which last I knew were Kevingranade, KA101, Rivet, Bevap-Din, and on-and-off me, though it could have changed in the last couple of weeks while I've been busy with finals). Generally vague general ideas go up on the forum or chat first, where technically specific ones go up on github.
3) Once the main devs have expressed their interest in the idea, the person goes to their personal fork and makes any desired changes on their local machine.
4) The person makes a Pull Request to the mainline from their personal fork.
5) The main devs check out the PR and see if any changes need to be made.
6) The person makes any needed changes and pushes them to their personal fork, which automatically updates the PR.
7) Once the PR is up to snuff it gets merged into the mainline, the PR is closed, and the person can delete the particular branch with the changes on their personal fork.
You could also skip step 2 and the first part of 3, but then you risk doing a lot of work only to be met with "we don't think this should be in the game" and turned down.
Not trying to sound harsh, since I did enjoy the game though haven't played in a while, but are the developers still adding completely arbitrary features while ignoring core mechanics like NPC and z-levels? I want to play it again, but from what I've read NPCs are still mostly broken as are Z-levels which are still in experimental stage.
There is a seemingly apparent "focus" on breadth of content rather than depth, mainly because:
1) There are way more people that are willing to add items and similar stuff (which only takes a DF-esque level of modding) then there are people who are willing to actually mess around with the code. Similarly there are way more people comfortable with doing light code edits instead of those willing to do huge, multiple-days of work, deep-level rewrites needed to add things like z-levels into the game.
2) The bigger the changes are the longer they take to test. The longer they take to test the more potential conflicts they create. The more potential conflicts they create the more work has to be done fixing them by the PR creator, which slows down testing even more, which creates more conflicts, and so on. This means it's relatively easy and quick to merge in small, "local" changes, and can sometimes take days or weeks for the largest PR's.
3) Generally each PR is done by a single person. There have been times where a few people have got together to collaborate on a single PR, but generally that type of collaboration takes place at the mainline level with multiple PR's, not at the individual PR level.
4) Most bigger mechanics changes are invisible to the players while very helpful to developers, while things like content addition are the exact opposite, very visible to players without really being helpful to developers at all.
As such the general dev progression of the game is that tons of people are constantly adding more "content" to the game, while a small handful of people slowly chip away at the worst parts of the code. Once a particular section of code (like the disease/effects system, or the martial arts system) reaches a certain point one of very few people who are comfortable handling deep rewrites finally decides that the results are worth the (now lesser) effort, and they come together with a deep rewrite PR. Combine this with the fact that the results most of those rewrite and chip-away PR's are invisible unless you are a developer yourself, and it definitely gives the impression that "the developers still adding completely arbitrary features while ignoring core mechanics like NPC and z-levels". The game is getting closer to things like Z-levels and NPC's; several facets of the map system that were blocking Z-level development have been rewritten, diseases are no longer player specific, we now have an overall creature framework in place that handles all players, NPC's, and monsters instead of them not being related at all, we've been slowly converting functions to be able to generically handle players or NPC's, bionics have been rewritten to be much better about respecting NPC's, and so on. It's just that to the player none of these changes make any apparent difference, since they are 99% pure code-side changes, without any actual gameplay ones, while many "arbitrary features" are just the opposite; pure visual gameplay changes without any real code-side ones.