1.If There Is Any Hardfork, Who Must Agree? The Miner Or The Nodes?
All participants of the network, the miners just keep the chains alive. A hardfork create a permanent fork or split in the blockchain resulting to two chains and the old & new chains needs enough support from miners for them to continue existing.
Helps the network to grow by accepting more transaction and also validating those transactions. It helps the network stay decentralized.
PS: I strongly believe you should move this discussion to the technical discussion board as you'll get better explanation from members there.