Quoted By:
Why not have all HM tied to the trainer devellopment? As a trainer you'd unlock techniques like Cut or Surf as you train yourself in the gyms allowing compatible pokemon to perform those moves on field.
Maybe even go for a trainer class system, where the trainer could go for specific builds becoming like Ranger, Scientist or Performer.
I think trainer progression could open up interesting gameplay.