I've also been quite curious - is it even possible to make modifications the protocol with so much of the current hashing power implemented in application specific hardware?
Yes. Hand waving because I'm not real familiar with the specifics, the hardware implements a very small piece of the protocol and needs a supervising controller to tell it what to do.