A review of energy harvesting technologies for railway systems: principles, applications and challenges | Synapse