Prevent error if ScannableMotor has units but the DummyMotor underneath it doesn't

This is a follow up to b32127a. If a ScannableMotor has units set explicitly,
but the DummyMotor underneath it implements MotorUnitStringSupplier and returns
an empty string, the ScannableMotor configuration will fail with:

  The hardware unit could not be set to '' because this is incompatible with
  the explicitely set user unit 'Deg'

The handling of scannable units and motor units is all a bit of a mess, and
needs further discussion.