Call USBD_Disconnect before software-triggered CPU reset

This makes sure that we'll re-enumerate on the USB, as a CPU reset
apparently doesn't automatically release the pull-up and notify the hub
that we were gone?
diff --git a/firmware/libboard/qmod/source/board_qmod.c b/firmware/libboard/qmod/source/board_qmod.c
index a5392bb..e05a454 100644
--- a/firmware/libboard/qmod/source/board_qmod.c
+++ b/firmware/libboard/qmod/source/board_qmod.c
@@ -112,6 +112,7 @@
 		break;
 	case 'R':
 		printf("Asking NVIC to reset us\n\r");
+		USBD_Disconnect();
 		NVIC_SystemReset();
 		break;
 	case 'O':