Special checks to prevent loading un-managed assemblies in Package Manager

### Issue

The package manager publish and loading mechanism may mistake an un-managed DLL as a managed assembly.  This causes the Assembly load procedure to throw a BadImageFormatException, which was previously uncaught.  Not good!

### Fix

I added two helper static methods to PackageLoader in order to catch this kind of failure.  The methods that make use of it can act appropriately.  For example, the PackagePublishViewModel simply adds the file as an AdditionalFile and the loader does not load it.  

### Reviewer

@ikeough