Hydrogen as a Fuel for IC Engines: Challenges, Opportunities, and Future Prospects