Who and how updates a bitcoin blockchain?

Actually, the bitcoin core command is engaged in it. Anyone can make the contribution to the development of bitcoin through the bitcoin core command by the departure of reports, correction of errors, the introduction of sentences, etc. The main team is provided on the same website.
This command is very conservative and implements changes which advantages are obvious. The similar changes (deprived of shortcomings) are carefully tested and coordinated with the community. Updates of this command — a soft fork (they do not require mandatory acceptance of changes by all participants of a network).
The community in the person of the miner for a certain period before up-dating begins to signal in support or a failure from up-dating (technically it occurs at the expense of “mark” of units). If the necessary percent is gained (in the form of the hash rate of a network which is directed to production of the units signaling in support of innovations), then up-dating happens in the assigned date. This certain interest of support, as a rule, shall be deducted during some period.

Everyone for himself decides whether to transfer to it on an updated blockchain or to continue to use the old version.
So, at the moment only 10% of a network are used by the summer SegWit updating when carrying out transactions.