It depends on the storage backend. But, in theory, you can go straight from 1.0 to 1.6 but there will be some edges you need to test which will require reading thru all the upgrade notes, as @Wolfsrudel mentioned. However, I wouldn’t do each version in step. Not sure there’s a firm reason to do so.
My rec would be to practice, doc a runbook, run-thru the runbook a few times and make sure it works… Then run your functional tests on the upgraded version. Then destroy and redo it all again, retest. Then, execute the real upgrade.
If you’re planning to move to integrated storage backend, I’d upgrade to 1.4.x, do the migration from whatever-backend to IS, then upgrade Vault to latest.