What's the state of FDE with software such as TrueCrypt, VeraCrypt for SSD's - my main concern being that SSD's leave some free space to prolong the life of the drive - would it store unencrypted data there, or is there some new way in which SSD's or the encryption software work that would guarantee there is no unencrypted data on the drive when using FDE?
One security problem inherent to your question is regarding temporary disk space. If the application is writing intermediate files to the /tmp folder, and that folder is not on an encrypted drive, you would leak data regardless of where the final output is written. Similarly, if you have a swap file located on an unencrypted disk, pages of cleartext memory could be written to recoverable areas of a hard disk or flash drive.
The next question is about the FDE technology. Hardware based FDEs are vulnerable to attackers with physical access (evil maids, cold boot, etc.) This paper describes several types of attacks. Some attacks are SSD hardware specific (replacing the drive board), while others are more generic (DMA requests.)
Software based FDEs (VeraCrypt, etc.) are of course vulnerable to various hacking attacks (malware, keystroke loggers, ransomware, etc.) When you're logged on and using the drive, if the malware is present at the same time, the bad guys win.
They're all better than nothing, but don't rely on any as the one true perfect solution, as no such magical unicorn exists.