Changes to the Publish.ps1 script.

- Added external dependency on Ionic.Zip as the System.IO.Compression.FileSystem created an archives that wasn't able to be read by WebDeploy and assumably Azure Web App gallery. This was meant to be in the previous pull-request, however was squashed out.
- Clean-up temporary packaging files at end of script, unless -Debug is specified.
- Pop-Location if there was an error. - UTF8 output from npm was causing the Powershell console to crash (however not the Powershell ISE), so strip out UTF8 characters using regex.