Yes to all that, BUT what needs to be added is for iFly to ask if you want any extra files on the receiving device to remain after a sync. Otherwise the device(s) being downloaded to become accumulators of unwanted files.
Example: my Windows PC is my "main" iFly platform, where I develop flight plans, waypoints and sketches. Often, I create a temporary flight plan (or waypoint or sketch) and then download it to my tablet, and also my phone as backup. When I download (sync) to my tablet and phone, those FP's/WP's/sketches add to whatever is already on that device (unless they're the same name, of course). Later, when I delete these temp items off Windows, a sync does not remove them off the tablet or phone. Now, for some people this might be a fine default behavior. For me, and maybe others, what I want is my tablet and phone to be mirrors (in my chosen sync categories) of wherever I sync from.
Another example: I just renamed a large batch of flight plans on Windows. Knowing this was going to hugely increase my flight plans on the tablet and phone (because it was going to keep the flight plans with the old names), I actually used a file manager on those 2 devices to drill down to the iFly folder and delete all the flight plans before doing a sync.
This is a functionality that I believe should be in iFly. At the beginning of a sync operation, it should ask if you want to first remove all existing files for whatever you're sync'ing (flight plans, waypoints, whatever) before doing the sync. Or at the end of the sync, it should ask if you want to remove any extra files that are on the target device that weren't in the source set of files. This is similar to what it does when you do a manual upload to the server and it asks if you want to delete files on the server that aren't on your device now.