Did some cleanup work on the unshield thread: more code re-use
Added some nice error messages to the installation process