Enhancement: enable --launchpad

 * add --launchpad flag so we can failover when mirrors.ubuntu.com is down
 * a tiny bit of input validation for when --launchpad is used
 * refactor retrieve() to support both options
Clean-up: remove require for nokogiri