First of all, it is important to distinguish between multiple things, all of which are often called 'forks'.
- The existence of two or more competing versions of history. These happen unintentionally in proof-of-work consensus systems when two miners produce a candidate block around the same time. These get resolved automatically.
- Software projects branching off from another one. These are not generally (but could be) associated with a change to the ledger/rules.
- A change in the rules about the validity of blocks (which additions to the ledger are accepted).
My view is that in a perfect world, (3) would never be necessary. We would all agree on what properties the system should have, encode those into software, and never touch those rules again. Reality is different of course, and sometimes changes to the system's rules are necessary - due to improve the technology, or to prevent against certain weaknesses or attacks. However, I do feel that cryptocurrencies (in general, as a research topic) intend to approach that goal, and are an experiment in building a system that lacks the need for human control. One of its value propositions is the prospect of creating a monetary system that is beyond control.
So how do we accomplish that? Clearly developers of node software that implements these rules have a strong influence over how it works. However, this influence is not absolute control. When you run a fully validating node, it comes with certain rules programmed in. It won't ever accept a chain of blocks that doesn't satisfy those rules. Only its operator can change that software to another version which has different rules. Developers can of course publish new versions that changes things, but they need to take into account that not everyone may update. Depending on the type of change, if significant (and not necessary large) parts of the ecosystem choose to not adopt an update, this can cause the ledger to split (where the result is 2 separate currencies, with each pre-existing coin spendable once on both sides). This risk is a strong deterrent to adopting changes, unless it is clear that those changes will be universally accepted.
So to answer your question:
Who are these people and how who holds them accountable?
You are.
Cryptocurrencies have the unique property that all of the system's rules are verifiable by everyone. By running software that implements the rules you want, you know that the system maintains those properties. Anyone who wishes to change these will at least need to convince you to change your software (this is why Bitcoin Core intentionally does not have an auto-update function, for example - it would place far too much power in whomever has control over the auto-update server).