Implement adaptivity for TR
Use exact preconditioner for llg block by default

(Much more reliable)
Add self test for adaptive tr