Refactor BurrHoleDevice::finalize to remove explicit finalizing of falcons.

The issue is that the NovintDevices are being stored in member
variables typed as DeviceInterface so we can test this code without
requiring two Falcons...but DeviceInterface::finalize is protected so we
can't call it from here.  It looks like the potential problem that the
previous approach addressed is that we don't want the m_upperDevice to
finalize first because then the m_lowerDevice could trigger
BurrHoleDevice::recomputeAndUpdate, which would attempt to access the
finalized m_upperDevice.

Instead we remove the InputConsumer from m_lowerDevice and just let the
Falcons finalize themselves when they destruct.