Important bug fix with pseudos and set_position
(work from Antonia & Matias on ID29)
Symptom: when moving a pseudo motor and then moving one of the real motors, the set_position for the pseudo is not updated properly.
Cause: self._write_settings in CalcController was set to False after pseudo motor move
Resolution: removed self._write_settings, cleaned code, removed self._hw_control, refactored a bit ; added tests to make sure the bad behavior won't come back. Look at commits for details.