Degradation in FPGAs: Monitoring, Modeling and Mitigation