Renames BaseLock back to Lock since it is used via composition by other classes (such as IRSensor).
IRSensor now has as its member a Lock object to carry out hold and resume where required.