Makes sense why it's needed.

I'd agree with not allowing simultaneous read and write.  Since they'll go to a common flash backing anyway it's probably going to have another semaphore.  We already have ```xSemaphoreTakeRecursive(mutex, portMAX_DELAY);``` that probably wrappers all the other save load methods but for some reason there isn't one on the direct UAVObjLoad method.

Good call on the F1 shortcut.