Fix for filenames without extensions

Added a call to "CookedFilename" when initializing the FileName property
on the ProgramFile class.  This should prevent us from accidentally
creating any files without an extension, while still allowing users to
set their own extension when referring to files.  It appears to work
with all of my existing scripts on vessels, and fixes all of my boot
scripts.
Merge pull request #423 from hvacengi/fix-filename

Fix for filenames without extensions
Adds additional suffix protection for bootfiles.
Merge pull request #424 from Dunbaratu/additional-bootfile-change

Adds additional suffix protection for bootfiles.